From 76c6a0314fd5718aad8f978f76bbe5e3961ed659 Mon Sep 17 00:00:00 2001 From: Scott Dixon Date: Fri, 2 Feb 2024 11:32:12 +1000 Subject: [PATCH 01/19] Add initial Cart support --- README.md | 9 + fixtures/cart-fixture.js | 49 + src/cart-resource.js | 331 ++ src/client.js | 3 + src/graphql/CartFragment.graphql | 57 + src/graphql/cartNodeQuery.graphql | 5 + test/client-cart-integration-test.js | 581 +++ yarn.lock | 4960 ++++++++++++-------------- 8 files changed, 3262 insertions(+), 2733 deletions(-) create mode 100644 fixtures/cart-fixture.js create mode 100644 src/cart-resource.js create mode 100644 src/graphql/CartFragment.graphql create mode 100644 src/graphql/cartNodeQuery.graphql create mode 100644 test/client-cart-integration-test.js diff --git a/README.md b/README.md index 47363da79..61de2e5b9 100644 --- a/README.md +++ b/README.md @@ -164,6 +164,15 @@ client.collection.fetchWithProducts(collectionId, {productsFirst: 10}).then((col }); ``` +### Creating a Cart +```javascript +// Create an empty checkout +client.cart.create().then((cart) => { + // Do something with the cart + console.log(cart); +}); +``` + ### Creating a Checkout ```javascript // Create an empty checkout diff --git a/fixtures/cart-fixture.js b/fixtures/cart-fixture.js new file mode 100644 index 000000000..91e025c9a --- /dev/null +++ b/fixtures/cart-fixture.js @@ -0,0 +1,49 @@ +export default { + data: { + node: { + __typename: 'Cart', + attributes: [ + { + key: 'cart_attribute', + value: 'This is a cart attribute' + } + ], + checkoutUrl: 'https://secure-us.gcds.com/cart/c/Z2NwLWV1cm9wZS13ZXN0NDowMUhOSERHWUNTNDlSMUtQNk1HUjlZOTdDSA?key=73de96370dea19c18996cebea3b31a1b', + discountCodes: [], + id: 'gid://shopify/Cart/Z2NwLWV1cm9wZS13ZXN0NDowMUhOSERHWUNTNDlSMUtQNk1HUjlZOTdDSA', + createdAt: '2024-02-01T04:06:11Z', + updatedAt: '2024-02-01T04:06:11Z', + lines: { + pageInfo: { + hasNextPage: false, + hasPreviousPage: false + }, + edges: [ + { + node: { + id: 'gid://shopify/CartLine/a07f5410-ea7a-41ac-a794-839c1e0d599c?cart=Z2NwLWV1cm9wZS13ZXN0NDowMUhOSERHWUNTNDlSMUtQNk1HUjlZOTdDSA', + merchandise: { + id: 'gid://shopify/ProductVariant/43162292814051' + } + } + } + ] + }, + cost: { + totalAmount: { + amount: '0.0', + currencyCode: 'USD' + }, + subtotalAmount: { + amount: '0.0', + currencyCode: 'USD' + }, + totalTaxAmount: { + amount: '0.0', + currencyCode: 'USD' + }, + totalDutyAmount: null + } + } + } +} diff --git a/src/cart-resource.js b/src/cart-resource.js new file mode 100644 index 000000000..a5eb68642 --- /dev/null +++ b/src/cart-resource.js @@ -0,0 +1,331 @@ +import Resource from './resource'; +import defaultResolver from './default-resolver'; +// import handleCheckoutMutation from './handle-checkout-mutation'; + +// GraphQL +import cartNodeQuery from './graphql/cartNodeQuery.graphql'; +// import checkoutCreateMutation from './graphql/checkoutCreateMutation.graphql'; +// import checkoutLineItemsAddMutation from './graphql/checkoutLineItemsAddMutation.graphql'; +// import checkoutLineItemsRemoveMutation from './graphql/checkoutLineItemsRemoveMutation.graphql'; +// import checkoutLineItemsReplaceMutation from './graphql/checkoutLineItemsReplaceMutation.graphql'; +// import checkoutLineItemsUpdateMutation from './graphql/checkoutLineItemsUpdateMutation.graphql'; +// import checkoutAttributesUpdateV2Mutation from './graphql/checkoutAttributesUpdateV2Mutation.graphql'; +// import checkoutDiscountCodeApplyV2Mutation from './graphql/checkoutDiscountCodeApplyV2Mutation.graphql'; +// import checkoutDiscountCodeRemoveMutation from './graphql/checkoutDiscountCodeRemoveMutation.graphql'; +// import checkoutGiftCardsAppendMutation from './graphql/checkoutGiftCardsAppendMutation.graphql'; +// import checkoutGiftCardRemoveV2Mutation from './graphql/checkoutGiftCardRemoveV2Mutation.graphql'; +// import checkoutEmailUpdateV2Mutation from './graphql/checkoutEmailUpdateV2Mutation.graphql'; +// import checkoutShippingAddressUpdateV2Mutation from './graphql/checkoutShippingAddressUpdateV2Mutation.graphql'; + +/** + * The JS Buy SDK checkout resource + * @class + */ +class CartResource extends Resource { + + /** + * Fetches a card by ID. + * + * @example + * client.cart.fetch('FlZj9rZXlN5MDY4ZDFiZTUyZTUwNTE2MDNhZjg=').then((cart) => { + * // Do something with the cart + * }); + * + * @param {String} id The id of the card to fetch. + * @return {Promise|GraphModel} A promise resolving with a `GraphModel` of the cart. + */ + fetch(id) { + return this.graphQLClient + .send(cartNodeQuery, {id}) + .then(defaultResolver('node')) + .then((cart) => { + if (!cart) { return null; } + + return this.graphQLClient.fetchAllPages(cart.lines, {pageSize: 250}).then((lineItems) => { + cart.attrs.lineItems = lineItems; + + return cart; + }); + }); + } + + // /** + // * Creates a checkout. + // * + // * @example + // * const input = { + // * lineItems: [ + // * {variantId: 'Z2lkOi8vc2hvcGlmeS9Qcm9kdWN0VmFyaWFudC8yOTEwNjAyMjc5Mg==', quantity: 5} + // * ] + // * }; + // * + // * client.checkout.create(input).then((checkout) => { + // * // Do something with the newly created checkout + // * }); + // * + // * @param {Object} [input] An input object containing zero or more of: + // * @param {String} [input.email] An email connected to the checkout. + // * @param {Object[]} [input.lineItems] A list of line items in the checkout. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/checkoutlineiteminput|Storefront API reference} for valid input fields for each line item. + // * @param {Object} [input.shippingAddress] A shipping address. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/mailingaddressinput|Storefront API reference} for valid input fields. + // * @param {String} [input.note] A note for the checkout. + // * @param {Object[]} [input.customAttributes] A list of custom attributes for the checkout. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/attributeinput|Storefront API reference} for valid input fields. + // * @param {String} [input.presentmentCurrencyCode ] A presentment currency code. See the {@link https://help.shopify.com/en/api/storefront-api/reference/enum/currencycode|Storefront API reference} for valid currency code values. + // * @return {Promise|GraphModel} A promise resolving with the created checkout. + // */ + // create(input = {}) { + // return this.graphQLClient + // .send(checkoutCreateMutation, {input}) + // .then(handleCheckoutMutation('checkoutCreate', this.graphQLClient)); + // } + + // /** + // * Replaces the value of checkout's custom attributes and/or note with values defined in the input + // * + // * @example + // * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; + // * const input = {customAttributes: [{key: "MyKey", value: "MyValue"}]}; + // * + // * client.checkout.updateAttributes(checkoutId, input).then((checkout) => { + // * // Do something with the updated checkout + // * }); + // * + // * @param {String} checkoutId The ID of the checkout to update. + // * @param {Object} [input] An input object containing zero or more of: + // * @param {Boolean} [input.allowPartialAddresses] An email connected to the checkout. + // * @param {Object[]} [input.customAttributes] A list of custom attributes for the checkout. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/attributeinput|Storefront API reference} for valid input fields. + // * @param {String} [input.note] A note for the checkout. + // * @return {Promise|GraphModel} A promise resolving with the updated checkout. + // */ + // updateAttributes(checkoutId, input = {}) { + // return this.graphQLClient + // .send(checkoutAttributesUpdateV2Mutation, {checkoutId, input}) + // .then(handleCheckoutMutation('checkoutAttributesUpdateV2', this.graphQLClient)); + // } + + // /** + // * Replaces the value of checkout's email address + // * + // * @example + // * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; + // * const email = 'user@example.com'; + // * + // * client.checkout.updateEmail(checkoutId, email).then((checkout) => { + // * // Do something with the updated checkout + // * }); + // * + // * @param {String} checkoutId The ID of the checkout to update. + // * @param {String} email The email address to apply to the checkout. + // * @return {Promise|GraphModel} A promise resolving with the updated checkout. + // */ + // updateEmail(checkoutId, email) { + // return this.graphQLClient + // .send(checkoutEmailUpdateV2Mutation, {checkoutId, email}) + // .then(handleCheckoutMutation('checkoutEmailUpdateV2', this.graphQLClient)); + // } + + // /** + // * Adds line items to an existing checkout. + // * + // * @example + // * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; + // * const lineItems = [{variantId: 'Z2lkOi8vc2hvcGlmeS9Qcm9kdWN0VmFyaWFudC8yOTEwNjAyMjc5Mg==', quantity: 5}]; + // * + // * client.checkout.addLineItems(checkoutId, lineItems).then((checkout) => { + // * // Do something with the updated checkout + // * }); + // * + // * @param {String} checkoutId The ID of the checkout to add line items to. + // * @param {Object[]} lineItems A list of line items to add to the checkout. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/checkoutlineiteminput|Storefront API reference} for valid input fields for each line item. + // * @return {Promise|GraphModel} A promise resolving with the updated checkout. + // */ + // addLineItems(checkoutId, lineItems) { + // return this.graphQLClient + // .send(checkoutLineItemsAddMutation, {checkoutId, lineItems}) + // .then(handleCheckoutMutation('checkoutLineItemsAdd', this.graphQLClient)); + // } + + // /** + // * Applies a discount to an existing checkout using a discount code. + // * + // * @example + // * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; + // * const discountCode = 'best-discount-ever'; + // * + // * client.checkout.addDiscount(checkoutId, discountCode).then((checkout) => { + // * // Do something with the updated checkout + // * }); + // * + // * @param {String} checkoutId The ID of the checkout to add discount to. + // * @param {String} discountCode The discount code to apply to the checkout. + // * @return {Promise|GraphModel} A promise resolving with the updated checkout. + // */ + // addDiscount(checkoutId, discountCode) { + // return this.graphQLClient + // .send(checkoutDiscountCodeApplyV2Mutation, {checkoutId, discountCode}) + // .then(handleCheckoutMutation('checkoutDiscountCodeApplyV2', this.graphQLClient)); + // } + + // /** + // * Removes the applied discount from an existing checkout. + // * + // * @example + // * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; + // * + // * client.checkout.removeDiscount(checkoutId).then((checkout) => { + // * // Do something with the updated checkout + // * }); + // * + // * @param {String} checkoutId The ID of the checkout to remove the discount from. + // * @return {Promise|GraphModel} A promise resolving with the updated checkout. + // */ + // removeDiscount(checkoutId) { + // return this.graphQLClient + // .send(checkoutDiscountCodeRemoveMutation, {checkoutId}) + // .then(handleCheckoutMutation('checkoutDiscountCodeRemove', this.graphQLClient)); + // } + + // /** + // * Applies gift cards to an existing checkout using a list of gift card codes + // * + // * @example + // * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; + // * const giftCardCodes = ['6FD8853DAGAA949F']; + // * + // * client.checkout.addGiftCards(checkoutId, giftCardCodes).then((checkout) => { + // * // Do something with the updated checkout + // * }); + // * + // * @param {String} checkoutId The ID of the checkout to add gift cards to. + // * @param {String[]} giftCardCodes The gift card codes to apply to the checkout. + // * @return {Promise|GraphModel} A promise resolving with the updated checkout. + // */ + // addGiftCards(checkoutId, giftCardCodes) { + // return this.graphQLClient + // .send(checkoutGiftCardsAppendMutation, {checkoutId, giftCardCodes}) + // .then(handleCheckoutMutation('checkoutGiftCardsAppend', this.graphQLClient)); + // } + + // /** + // * Remove a gift card from an existing checkout + // * + // * @example + // * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; + // * const appliedGiftCardId = 'Z2lkOi8vc2hvcGlmeS9BcHBsaWVkR2lmdENhcmQvNDI4NTQ1ODAzMTI='; + // * + // * client.checkout.removeGiftCard(checkoutId, appliedGiftCardId).then((checkout) => { + // * // Do something with the updated checkout + // * }); + // * + // * @param {String} checkoutId The ID of the checkout to add gift cards to. + // * @param {String} appliedGiftCardId The gift card id to remove from the checkout. + // * @return {Promise|GraphModel} A promise resolving with the updated checkout. + // */ + // removeGiftCard(checkoutId, appliedGiftCardId) { + // return this.graphQLClient + // .send(checkoutGiftCardRemoveV2Mutation, {checkoutId, appliedGiftCardId}) + // .then(handleCheckoutMutation('checkoutGiftCardRemoveV2', this.graphQLClient)); + // } + + // /** + // * Removes line items from an existing checkout. + // * + // * @example + // * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; + // * const lineItemIds = ['TViZGE5Y2U1ZDFhY2FiMmM2YT9rZXk9NTc2YjBhODcwNWIxYzg0YjE5ZjRmZGQ5NjczNGVkZGU=']; + // * + // * client.checkout.removeLineItems(checkoutId, lineItemIds).then((checkout) => { + // * // Do something with the updated checkout + // * }); + // * + // * @param {String} checkoutId The ID of the checkout to remove line items from. + // * @param {String[]} lineItemIds A list of the ids of line items to remove from the checkout. + // * @return {Promise|GraphModel} A promise resolving with the updated checkout. + // */ + // removeLineItems(checkoutId, lineItemIds) { + // return this.graphQLClient + // .send(checkoutLineItemsRemoveMutation, {checkoutId, lineItemIds}) + // .then(handleCheckoutMutation('checkoutLineItemsRemove', this.graphQLClient)); + // } + + // /** + // * Replace line items on an existing checkout. + // * + // * @example + // * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; + // * const lineItems = [{variantId: 'Z2lkOi8vc2hvcGlmeS9Qcm9kdWN0VmFyaWFudC8yOTEwNjAyMjc5Mg==', quantity: 5}]; + // * + // * client.checkout.replaceLineItems(checkoutId, lineItems).then((checkout) => { + // * // Do something with the updated checkout + // * }); + // * + // * @param {String} checkoutId The ID of the checkout to add line items to. + // * @param {Object[]} lineItems A list of line items to set on the checkout. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/checkoutlineiteminput|Storefront API reference} for valid input fields for each line item. + // * @return {Promise|GraphModel} A promise resolving with the updated checkout. + // */ + // replaceLineItems(checkoutId, lineItems) { + // return this.graphQLClient + // .send(checkoutLineItemsReplaceMutation, {checkoutId, lineItems}) + // .then(handleCheckoutMutation('checkoutLineItemsReplace', this.graphQLClient)); + // } + + // /** + // * Updates line items on an existing checkout. + // * + // * @example + // * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; + // * const lineItems = [ + // * { + // * id: 'TViZGE5Y2U1ZDFhY2FiMmM2YT9rZXk9NTc2YjBhODcwNWIxYzg0YjE5ZjRmZGQ5NjczNGVkZGU=', + // * quantity: 5, + // * variantId: 'Z2lkOi8vc2hvcGlmeS9Qcm9kdWN0VmFyaWFudC8yOTEwNjAyMjc5Mg==' + // * } + // * ]; + // * + // * client.checkout.updateLineItems(checkoutId, lineItems).then(checkout => { + // * // Do something with the updated checkout + // * }); + // * + // * @param {String} checkoutId The ID of the checkout to update a line item on. + // * @param {Object[]} lineItems A list of line item information to update. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/checkoutlineitemupdateinput|Storefront API reference} for valid input fields for each line item. + // * @return {Promise|GraphModel} A promise resolving with the updated checkout. + // */ + // updateLineItems(checkoutId, lineItems) { + // return this.graphQLClient + // .send(checkoutLineItemsUpdateMutation, {checkoutId, lineItems}) + // .then(handleCheckoutMutation('checkoutLineItemsUpdate', this.graphQLClient)); + // } + + // /** + // * Updates shipping address on an existing checkout. + // * + // * @example + // * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; + // * const shippingAddress = { + // * address1: 'Chestnut Street 92', + // * address2: 'Apartment 2', + // * city: 'Louisville', + // * company: null, + // * country: 'United States', + // * firstName: 'Bob', + // * lastName: 'Norman', + // * phone: '555-625-1199', + // * province: 'Kentucky', + // * zip: '40202' + // * }; + // * + // * client.checkout.updateShippingAddress(checkoutId, shippingAddress).then(checkout => { + // * // Do something with the updated checkout + // * }); + // * + // * @param {String} checkoutId The ID of the checkout to update shipping address. + // * @param {Object} shippingAddress A shipping address. + // * @return {Promise|GraphModel} A promise resolving with the updated checkout. + // */ + // updateShippingAddress(checkoutId, shippingAddress) { + // return this.graphQLClient + // .send(checkoutShippingAddressUpdateV2Mutation, {checkoutId, shippingAddress}) + // .then(handleCheckoutMutation('checkoutShippingAddressUpdateV2', this.graphQLClient)); + // } +} + +export default CartResource; diff --git a/src/client.js b/src/client.js index 1bd350913..47780b969 100644 --- a/src/client.js +++ b/src/client.js @@ -4,6 +4,7 @@ import ProductResource from './product-resource'; import CollectionResource from './collection-resource'; import ShopResource from './shop-resource'; import CheckoutResource from './checkout-resource'; +import CartResource from './cart-resource'; import ImageResource from './image-resource'; import {version} from '../package.json'; @@ -18,6 +19,7 @@ import types from '../schema.json'; * @property {CollectionResource} collection The property under which collection fetching methods live. * @property {ShopResource} shop The property under which shop fetching methods live. * @property {CheckoutResource} checkout The property under which shop fetching and mutating methods live. + * @property {CartResource} cart The property under which shop fetching and mutating methods live. * @property {ImageResource} image The property under which image helper methods live. */ class Client { @@ -80,6 +82,7 @@ class Client { this.collection = new CollectionResource(this.graphQLClient); this.shop = new ShopResource(this.graphQLClient); this.checkout = new CheckoutResource(this.graphQLClient); + this.cart = new CartResource(this.graphQLClient); this.image = new ImageResource(this.graphQLClient); } diff --git a/src/graphql/CartFragment.graphql b/src/graphql/CartFragment.graphql new file mode 100644 index 000000000..4e25f8c20 --- /dev/null +++ b/src/graphql/CartFragment.graphql @@ -0,0 +1,57 @@ +fragment CartFragment on Cart { + id + createdAt + updatedAt + lines(first: 10) { + pageInfo { + hasNextPage + hasPreviousPage + } + edges { + node { + id + merchandise { + ... on ProductVariant { + id + } + } + } + } + } + attributes { + key + value + } + cost { + totalAmount { + amount + currencyCode + } + subtotalAmount { + amount + currencyCode + } + totalTaxAmount { + amount + currencyCode + } + totalDutyAmount { + amount + currencyCode + } + } + checkoutUrl + discountCodes { + applicable + code + } + buyerIdentity { + countryCode + walletPreferences + email + phone + customer { + email + } + } +} diff --git a/src/graphql/cartNodeQuery.graphql b/src/graphql/cartNodeQuery.graphql new file mode 100644 index 000000000..bfd21b3c2 --- /dev/null +++ b/src/graphql/cartNodeQuery.graphql @@ -0,0 +1,5 @@ +query ($id: ID!) { + node(id: $id) { + ...CartFragment + } +} diff --git a/test/client-cart-integration-test.js b/test/client-cart-integration-test.js new file mode 100644 index 000000000..ceacfda83 --- /dev/null +++ b/test/client-cart-integration-test.js @@ -0,0 +1,581 @@ +import assert from 'assert'; +import Client from '../src/client'; +import fetchMock from './isomorphic-fetch-mock'; // eslint-disable-line import/no-unresolved +import fetchMockPostOnce from './fetch-mock-helper'; + +// fixtures +import cartFixture from '../fixtures/cart-fixture'; +// import checkoutNullFixture from '../fixtures/node-null-fixture'; +// import checkoutCreateFixture from '../fixtures/checkout-create-fixture'; +// import checkoutCreateInvalidVariantIdErrorFixture from '../fixtures/checkout-create-invalid-variant-id-error-fixture'; +// import checkoutCreateWithPaginatedLineItemsFixture from '../fixtures/checkout-create-with-paginated-line-items-fixture'; +// import {secondPageLineItemsFixture, thirdPageLineItemsFixture} from '../fixtures/paginated-line-items-fixture'; +// import checkoutLineItemsAddFixture from '../fixtures/checkout-line-items-add-fixture'; +// import checkoutLineItemsAddWithUserErrorsFixture from '../fixtures/checkout-line-items-add-with-user-errors-fixture'; +// import checkoutLineItemsUpdateFixture from '../fixtures/checkout-line-items-update-fixture'; +// import checkoutLineItemsUpdateWithUserErrorsFixture from '../fixtures/checkout-line-items-update-with-user-errors-fixture'; +// import checkoutLineItemsRemoveFixture from '../fixtures/checkout-line-items-remove-fixture'; +// import checkoutLineItemsRemoveWithUserErrorsFixture from '../fixtures/checkout-line-items-remove-with-user-errors-fixture'; +// import checkoutLineItemsReplaceFixture from '../fixtures/checkout-line-items-replace-fixture'; +// import checkoutLineItemsReplaceWithUserErrorsFixture from '../fixtures/checkout-line-items-replace-with-user-errors-fixture'; +// import checkoutUpdateAttributesV2Fixture from '../fixtures/checkout-update-custom-attrs-fixture'; +// import checkoutUpdateAttributesV2WithUserErrorsFixture from '../fixtures/checkout-update-custom-attrs-with-user-errors-fixture'; +// import checkoutUpdateEmailV2Fixture from '../fixtures/checkout-update-email-fixture'; +// import checkoutUpdateEmailV2WithUserErrorsFixture from '../fixtures/checkout-update-email-with-user-errors-fixture'; +// import checkoutDiscountCodeApplyV2Fixture from '../fixtures/checkout-discount-code-apply-fixture'; +// import checkoutDiscountCodeRemoveFixture from '../fixtures/checkout-discount-code-remove-fixture'; +// import checkoutGiftCardsAppendFixture from '../fixtures/checkout-gift-cards-apply-fixture'; +// import checkoutGiftCardRemoveV2Fixture from '../fixtures/checkout-gift-card-remove-fixture'; +// import checkoutShippingAddressUpdateV2Fixture from '../fixtures/checkout-shipping-address-update-v2-fixture'; +// import checkoutShippingAdddressUpdateV2WithUserErrorsFixture from '../fixtures/checkout-shipping-address-update-v2-with-user-errors-fixture'; + +suite('client-cart-integration-test', () => { + const domain = 'client-integration-tests.myshopify.io'; + const config = { + storefrontAccessToken: 'abc123', + domain + }; + // const shippingAddress = { + // address1: 'Chestnut Street 92', + // address2: 'Apartment 2', + // city: 'Louisville', + // company: null, + // country: 'United States', + // firstName: 'Bob', + // lastName: 'Norman', + // phone: '555-625-1199', + // province: 'Kentucky', + // zip: '40202' + // }; + let client; + let apiUrl; + + setup(() => { + client = Client.buildClient(config); + apiUrl = `https://${domain}/api/${client.config.apiVersion}/graphql`; + fetchMock.reset(); + }); + + teardown(() => { + client = null; + fetchMock.restore(); + }); + + test('it resolves with a cart on Client.cart#fetch', () => { + fetchMockPostOnce(fetchMock, apiUrl, cartFixture); + const cartId = cartFixture.data.node.id; + + return client.cart.fetch(cartId).then((cart) => { + assert.equal(cart.id, cartId); + assert.ok(fetchMock.done()); + }); + }); + + // test('it resolves with null on Client.checkout#fetch for a bad checkoutId', () => { + // fetchMockPostOnce(fetchMock, apiUrl, checkoutNullFixture); + + // const checkoutId = checkoutFixture.data.node.id; + + // return client.checkout.fetch(checkoutId).then((checkout) => { + // assert.equal(checkout, null); + // assert.ok(fetchMock.done()); + // }); + // }); + + // test('it resolves with a checkout on Client.checkout#create', () => { + // const input = { + // lineItems: [ + // { + // variantId: 'an-id', + // quantity: 5 + // } + // ], + // shippingAddress: {} + // }; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutCreateFixture); + + // return client.checkout.create(input).then((checkout) => { + // assert.equal(checkout.id, checkoutCreateFixture.data.checkoutCreate.checkout.id); + // assert.ok(fetchMock.done()); + // }); + // }); + + // test('it resolve with user errors on Client.checkout#create when variantId is invalid', () => { + // const input = { + // lineItems: [ + // { + // variantId: 'a-bad-id', + // quantity: 5 + // } + // ] + // }; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutCreateInvalidVariantIdErrorFixture); + + // return client.checkout.create(input).then(() => { + // assert.ok(false, 'Promise should not resolve'); + // }).catch((error) => { + // assert.equal(error.message, '[{"message":"Variable input of type CheckoutCreateInput! was provided invalid value"}]'); + // }); + // }); + + // test('it resolves with a checkout on Client.checkout#updateAttributes', () => { + // const checkoutId = 'Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE='; + // const input = { + // lineItems: [ + // {variantId: 'an-id', quantity: 5} + // ], + // customAttributes: [ + // {key: 'MyKey', value: 'MyValue'} + // ] + // }; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutUpdateAttributesV2Fixture); + + // return client.checkout.updateAttributes(checkoutId, input).then((checkout) => { + // assert.equal(checkout.id, checkoutUpdateAttributesV2Fixture.data.checkoutAttributesUpdateV2.checkout.id); + // assert.equal(checkout.customAttributes[0].key, checkoutUpdateAttributesV2Fixture.data.checkoutAttributesUpdateV2.checkout.customAttributes[0].key); + // assert.equal(checkout.customAttributes[0].value, checkoutUpdateAttributesV2Fixture.data.checkoutAttributesUpdateV2.checkout.customAttributes[0].value); + // assert.ok(fetchMock.done()); + // }); + // }); + + // test('it resolves with user errors on Client.checkout#updateAttributes when input is invalid', () => { + // const checkoutId = checkoutUpdateAttributesV2Fixture.data.checkoutAttributesUpdateV2.checkout.id; + // const input = { + // note: 'Very long note' + // }; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutUpdateAttributesV2WithUserErrorsFixture); + + // return client.checkout.updateAttributes(checkoutId, input).then(() => { + // assert.ok(false, 'Promise should not resolve'); + // }).catch((error) => { + // assert.equal(error.message, '[{"message":"Note is too long (maximum is 5000 characters)","field":["input","note"],"code":"TOO_LONG"}]'); + // }); + // }); + + // test('it resolves with a checkout on Client.checkout#updateEmail', () => { + // const checkoutId = 'Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE='; + // const input = { + // email: 'user@example.com' + // }; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutUpdateEmailV2Fixture); + + // return client.checkout.updateEmail(checkoutId, input).then((checkout) => { + // assert.equal(checkout.id, checkoutUpdateEmailV2Fixture.data.checkoutEmailUpdateV2.checkout.id); + // assert.equal(checkout.email, checkoutUpdateEmailV2Fixture.data.checkoutEmailUpdateV2.checkout.email); + // assert.ok(fetchMock.done()); + // }); + // }); + + // test('it resolve with user errors on Client.checkout#updateEmail when email is invalid', () => { + // const checkoutId = checkoutUpdateEmailV2Fixture.data.checkoutEmailUpdateV2.checkout.id; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutUpdateEmailV2WithUserErrorsFixture); + + // return client.checkout.updateEmail(checkoutId, {email: 'invalid-email'}).then(() => { + // assert.ok(false, 'Promise should not resolve'); + // }).catch((error) => { + // assert.equal(error.message, '[{"message":"Email is invalid","field":["email"],"code":"INVALID"}]'); + // }); + // }); + + // test('it resolves with a checkout on Client.checkout#addLineItems', () => { + // const checkoutId = checkoutLineItemsAddFixture.data.checkoutLineItemsAdd.checkout.id; + // const lineItems = [ + // {variantId: 'id1', quantity: 5}, + // {variantId: 'id2', quantity: 2} + // ]; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutLineItemsAddFixture); + + // return client.checkout.addLineItems(checkoutId, lineItems).then((checkout) => { + // assert.equal(checkout.id, checkoutId); + // assert.ok(fetchMock.done()); + // }); + // }); + + // test('it resolve with user errors on Client.checkout#addLineItems when variant is invalid', () => { + // const checkoutId = checkoutLineItemsAddFixture.data.checkoutLineItemsAdd.checkout.id; + // const lineItems = [ + // {variantId: '', quantity: 1} + // ]; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutLineItemsAddWithUserErrorsFixture); + + // return client.checkout.addLineItems(checkoutId, lineItems).then(() => { + // assert.ok(false, 'Promise should not resolve'); + // }).catch((error) => { + // assert.equal(error.message, '[{"message":"Variant is invalid","field":["lineItems","0","variantId"],"code":"INVALID"}]'); + // }); + // }); + + // test('it resolves with a checkout on Client.checkout#replaceLineItems', () => { + // const checkoutId = checkoutLineItemsReplaceFixture.data.checkoutLineItemsReplace.checkout.id; + // const lineItems = [ + // {variantId: 'id1', quantity: 5}, + // {variantId: 'id2', quantity: 2} + // ]; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutLineItemsReplaceFixture); + + // return client.checkout.replaceLineItems(checkoutId, lineItems).then((checkout) => { + // assert.equal(checkout.id, checkoutId); + // assert.ok(fetchMock.done()); + // }); + // }); + + // test('it resolve with user errors on Client.checkout#replaceLineItems when variant is invalid', () => { + // const checkoutId = checkoutLineItemsReplaceFixture.data.checkoutLineItemsReplace.checkout.id; + // const lineItems = [ + // {variantId: '', quantity: 1} + // ]; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutLineItemsReplaceWithUserErrorsFixture); + + // return client.checkout.replaceLineItems(checkoutId, lineItems).then(() => { + // assert.ok(false, 'Promise should not resolve'); + // }).catch((error) => { + // assert.equal(error.message, '[{"message":"Variant is invalid","field":["lineItems","0","variantId"],"code":"INVALID"}]'); + // }); + // }); + + // test('it resolves with a checkout on Client.checkout#updateLineItems', () => { + // const checkoutId = checkoutLineItemsUpdateFixture.data.checkoutLineItemsUpdate.checkout.id; + // const lineItems = [ + // { + // id: 'gid://shopify/CheckoutLineItem/194677729198640?checkout=e3bd71f7248c806f33725a53e33931ef', + // quantity: 2, + // variantId: 'variant-id' + // } + // ]; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutLineItemsUpdateFixture); + + // return client.checkout.updateLineItems(checkoutId, lineItems).then((checkout) => { + // assert.equal(checkout.id, checkoutId); + // assert.ok(fetchMock.done()); + // }); + // }); + + // test('it resolves with user errors on Client.checkout#updateLineItems when variant is invalid', () => { + // const checkoutId = checkoutLineItemsUpdateFixture.data.checkoutLineItemsUpdate.checkout.id; + // const lineItems = [ + // { + // id: 'id1', + // quantity: 2, + // variantId: '' + // } + // ]; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutLineItemsUpdateWithUserErrorsFixture); + + // return client.checkout.updateLineItems(checkoutId, lineItems).then(() => { + // assert.ok(false, 'Promise should not resolve'); + // }).catch((error) => { + // assert.equal(error.message, '[{"message":"Variant is invalid","field":["lineItems","0","variantId"],"code":"INVALID"}]'); + // }); + // }); + + // test('it resolves with a checkout on Client.checkout#removeLineItems', () => { + // const checkoutId = checkoutLineItemsRemoveFixture.data.checkoutLineItemsRemove.checkout.id; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutLineItemsRemoveFixture); + + // return client.checkout.removeLineItems(checkoutId, ['line-item-id']).then((checkout) => { + // assert.equal(checkout.id, checkoutId); + // assert.ok(fetchMock.done()); + // }); + // }); + + // test('it resolves with user errors on Client.checkout#removeLineItems when line item is invalid', () => { + // const checkoutId = checkoutLineItemsRemoveFixture.data.checkoutLineItemsRemove.checkout.id; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutLineItemsRemoveWithUserErrorsFixture); + + // return client.checkout.removeLineItems(checkoutId, ['invalid-line-item-id']).then(() => { + // assert.ok(false, 'Promise should not resolve'); + // }).catch((error) => { + // assert.equal(error.message, '[{"message":"Line item with id abcdefgh not found","field":null,"code":"LINE_ITEM_NOT_FOUND"}]'); + // }); + // }); + + // test('it resolves with a checkout on Client.checkout#addDiscount', () => { + // const checkoutId = checkoutDiscountCodeApplyV2Fixture.data.checkoutDiscountCodeApplyV2.checkout.id; + // const discountCode = 'TENPERCENTOFF'; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutDiscountCodeApplyV2Fixture); + + // return client.checkout.addDiscount(checkoutId, discountCode).then((checkout) => { + // assert.equal(checkout.id, checkoutId); + // assert.ok(fetchMock.done()); + // }); + // }); + + // test('it resolves with checkoutUserErrors on Client.checkout#addDiscount with an invalid code', () => { + // const checkoutDiscountCodeApplyV2WithCheckoutUserErrorsFixture = { + // data: { + // checkoutDiscountCodeApplyV2: { + // checkoutUserErrors: [ + // { + // message: 'Discount code Unable to find a valid discount matching the code entered', + // field: ['discountCode'], + // code: 'DISCOUNT_NOT_FOUND' + // } + // ], + // userErrors: [ + // { + // message: 'Discount code Unable to find a valid discount matching the code entered', + // field: ['discountCode'] + // } + // ], + // checkout: null + // } + // } + // }; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutDiscountCodeApplyV2WithCheckoutUserErrorsFixture); + + // const checkoutId = checkoutDiscountCodeApplyV2Fixture.data.checkoutDiscountCodeApplyV2.checkout.id; + // const discountCode = 'INVALIDCODE'; + + // return client.checkout.addDiscount(checkoutId, discountCode).then(() => { + // assert.ok(false, 'Promise should not resolve'); + // }).catch((error) => { + // assert.equal(error.message, '[{"message":"Discount code Unable to find a valid discount matching the code entered","field":["discountCode"],"code":"DISCOUNT_NOT_FOUND"}]'); + // }); + // }); + + // test('it resolves with a checkout on Client.checkout#removeDiscount', () => { + // const checkoutId = checkoutDiscountCodeRemoveFixture.data.checkoutDiscountCodeRemove.checkout.id; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutDiscountCodeRemoveFixture); + + // return client.checkout.removeDiscount(checkoutId).then((checkout) => { + // assert.equal(checkout.id, checkoutId); + // assert.ok(fetchMock.done()); + // }); + // }); + + // test('it resolves with a checkout on Client.checkout#addGiftCards', () => { + // const checkoutId = checkoutGiftCardsAppendFixture.data.checkoutGiftCardsAppend.checkout.id; + // const giftCardCodes = ['H8HA 6H9F HBA8 F2FC', '6FD8 835D AAGA 949F']; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutGiftCardsAppendFixture); + + // return client.checkout.addGiftCards(checkoutId, giftCardCodes).then((checkout) => { + // assert.equal(checkout.id, checkoutId); + // assert.ok(fetchMock.done()); + // }); + // }); + + // test('it resolves with checkoutUserErrors on Client.checkout#addGiftCards with an invalid code', () => { + // const checkoutGiftCardsApppendWithCheckoutUserErrorsFixture = { + // data: { + // checkoutGiftCardsAppend: { + // checkoutUserErrors: [ + // { + // message: 'Code is invalid', + // field: ['giftCardCodes', '0'], + // code: 'GIFT_CARD_CODE_INVALID' + // } + // ], + // userErrors: [ + // { + // message: 'Code is invalid', + // field: ['giftCardCodes', '0'] + // } + // ], + // checkout: null + // } + // } + // }; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutGiftCardsApppendWithCheckoutUserErrorsFixture); + + // const checkoutId = checkoutGiftCardsAppendFixture.data.checkoutGiftCardsAppend.checkout.id; + // const giftCardCode = 'INVALIDCODE'; + + // return client.checkout.addGiftCards(checkoutId, [giftCardCode]).then(() => { + // assert.ok(false, 'Promise should not resolve'); + // }).catch((error) => { + // assert.equal(error.message, '[{"message":"Code is invalid","field":["giftCardCodes","0"],"code":"GIFT_CARD_CODE_INVALID"}]'); + // }); + // }); + + // test('it resolves with a checkout on Client.checkout#removeGiftCard', () => { + // const checkoutId = checkoutGiftCardRemoveV2Fixture.data.checkoutGiftCardRemoveV2.checkout.id; + // const appliedGiftCardId = 'Z2lkOi8vc2hvcGlmeS9BcHBsaWVkR2lmdENhcmQvNDI4NTQ1ODAzMTI='; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutGiftCardRemoveV2Fixture); + + // return client.checkout.removeGiftCard(checkoutId, appliedGiftCardId).then((checkout) => { + // assert.equal(checkout.id, checkoutId); + // assert.ok(fetchMock.done()); + // }); + // }); + + // test('it resolves with checkoutUserErrors on Client.checkout#removeGiftCard with a code not present', () => { + // const checkoutGiftCardsRemoveV2WithCheckoutUserErrorsFixture = { + // data: { + // checkoutGiftCardRemoveV2: { + // checkoutUserErrors: [ + // { + // message: 'Applied Gift Card not found', + // field: null, + // code: 'GIFT_CARD_NOT_FOUND' + // } + // ], + // userErrors: [ + // { + // message: 'Applied Gift Card not found', + // field: null + // } + // ], + // checkout: null + // } + // } + // }; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutGiftCardsRemoveV2WithCheckoutUserErrorsFixture); + + // const checkoutId = checkoutGiftCardRemoveV2Fixture.data.checkoutGiftCardRemoveV2.checkout.id; + // const appliedGiftCardId = 'Z2lkOi8vc2hvcGlmeS9BcHBsaWVkR2lmdENhcmQvNDI4NTQ1ODAzMTI='; + + // return client.checkout.removeGiftCard(checkoutId, appliedGiftCardId).then(() => { + // assert.ok(false, 'Promise should not resolve'); + // }).catch((error) => { + // assert.equal(error.message, '[{"message":"Applied Gift Card not found","field":null,"code":"GIFT_CARD_NOT_FOUND"}]'); + // }); + // }); + + // test('it resolves with a checkout on Client.checkout#updateShippingAddress', () => { + // const {id: checkoutId} = checkoutShippingAddressUpdateV2Fixture.data.checkoutShippingAddressUpdateV2.checkout; + // const { + // name: shippingName, + // provinceCode: shippingProvince, + // countryCode: shippingCountry + // } = checkoutShippingAddressUpdateV2Fixture.data.checkoutShippingAddressUpdateV2.checkout.shippingAddress; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutShippingAddressUpdateV2Fixture); + + // return client.checkout.updateShippingAddress(checkoutId, shippingAddress).then((checkout) => { + // assert.equal(checkout.id, checkoutId); + // assert.equal(checkout.shippingAddress.name, shippingName); + // assert.equal(checkout.shippingAddress.provinceCode, shippingProvince); + // assert.equal(checkout.shippingAddress.countryCode, shippingCountry); + // assert.ok(fetchMock.done()); + // }); + // }); + + // test('it resolves with user errors on Client.checkout#updateShippingAddress with invalid address', () => { + // const checkoutId = checkoutShippingAddressUpdateV2Fixture.data.checkoutShippingAddressUpdateV2.checkout.id; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutShippingAdddressUpdateV2WithUserErrorsFixture); + + // return client.checkout.updateShippingAddress(checkoutId, shippingAddress).then(() => { + // assert.ok(false, 'Promise should not resolve.'); + // }).catch((error) => { + // assert.equal(error.message, '[{"message":"Country is not supported","field":["shippingAddress","country"],"code":"NOT_SUPPORTED"}]'); + // }); + // }); + + // test('it fetches all paginated line items on the checkout on any checkout mutation', () => { + // const input = { + // lineItems: [ + // {variantId: 'id1', quantity: 5}, + // {variantId: 'id2', quantity: 10}, + // {variantId: 'id3', quantity: 15} + // ] + // }; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutCreateWithPaginatedLineItemsFixture); + // fetchMockPostOnce(fetchMock, apiUrl, secondPageLineItemsFixture); + // fetchMockPostOnce(fetchMock, apiUrl, thirdPageLineItemsFixture); + + // return client.checkout.create(input).then(() => { + // assert.ok(fetchMock.done()); + // }); + // }); + + // test('it rejects checkout mutations that return with a non-null `userErrors` field', () => { + // const checkoutCreateWithUserErrorsFixture = { + // data: { + // checkoutCreate: { + // userErrors: [ + // { + // message: 'Variant is invalid', + // field: [ + // 'lineItems', + // '0', + // 'variantId' + // ] + // } + // ], + // checkout: null + // } + // } + // }; + + // const input = { + // lineItems: [ + // {variantId: 'invalidId', quantity: 5} + // ] + // }; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutCreateWithUserErrorsFixture); + + // return client.checkout.create(input).then(() => { + // assert.ok(false, 'Promise should not resolve'); + // }).catch((error) => { + // assert.equal(error.message, '[{"message":"Variant is invalid","field":["lineItems","0","variantId"]}]'); + // }); + // }); + + // test('it rejects checkout mutations that return with a non-null `errors` without data field', () => { + // const checkoutCreateWithUserErrorsFixture = { + // data: {}, + // errors: [{message: 'Timeout'}] + // }; + + // const input = { + // lineItems: [ + // {variantId: 'invalidId', quantity: 5} + // ] + // }; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutCreateWithUserErrorsFixture); + + // return client.checkout.create(input).then(() => { + // assert.ok(false, 'Promise should not resolve'); + // }).catch((error) => { + // assert.equal(error.message, '[{"message":"Timeout"}]'); + // }); + // }); + + // test('it resolves checkout mutations that return with a non-null `errors` with data field', () => { + // checkoutCreateWithPaginatedLineItemsFixture.errors = [{message: 'Some error'}]; + + // const input = { + // lineItems: [ + // {variantId: 'id1', quantity: 5}, + // {variantId: 'id2', quantity: 10}, + // {variantId: 'id3', quantity: 15} + // ] + // }; + + // fetchMockPostOnce(fetchMock, apiUrl, checkoutCreateWithPaginatedLineItemsFixture); + // fetchMockPostOnce(fetchMock, apiUrl, secondPageLineItemsFixture); + // fetchMockPostOnce(fetchMock, apiUrl, thirdPageLineItemsFixture); + + // return client.checkout.create(input).then((checkout) => { + // assert.ok(checkout.errors); + // assert.ok(fetchMock.done()); + // }).catch(() => { + // assert.equal(false, 'Should resolve'); + // }); + // }); +}); diff --git a/yarn.lock b/yarn.lock index f6bc9facb..8f062f812 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4,19 +4,19 @@ "@babel/code-frame@^7.14.5": version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.14.5.tgz#23b08d740e83f49c5e59945fbf1b43e80bbf4edb" + resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.14.5.tgz" integrity sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw== dependencies: "@babel/highlight" "^7.14.5" "@babel/compat-data@^7.15.0": version "7.15.0" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.15.0.tgz#2dbaf8b85334796cafbb0f5793a90a2fc010b176" + resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.15.0.tgz" integrity sha512-0NqAC1IJE0S0+lL1SWFMxMkz1pKCNCjI4tr2Zx4LJSXxCLAdr6KyArnY+sno5m3yH9g737ygOyPABDsnXkpxiA== "@babel/core@^7.1.0": version "7.15.0" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.15.0.tgz#749e57c68778b73ad8082775561f67f5196aafa8" + resolved "https://registry.npmjs.org/@babel/core/-/core-7.15.0.tgz" integrity sha512-tXtmTminrze5HEUPn/a0JtOzzfp0nk+UEXQ/tqIJo3WDGypl/2OFQEMll/zSFU8f/lfmfLXvTaORHF3cfXIQMw== dependencies: "@babel/code-frame" "^7.14.5" @@ -37,7 +37,7 @@ "@babel/generator@^7.15.0": version "7.15.0" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.15.0.tgz#a7d0c172e0d814974bad5aa77ace543b97917f15" + resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.15.0.tgz" integrity sha512-eKl4XdMrbpYvuB505KTta4AV9g+wWzmVBW69tX0H2NwKVKd2YJbKgyK6M8j/rgLbmHOYJn6rUklV677nOyJrEQ== dependencies: "@babel/types" "^7.15.0" @@ -46,7 +46,7 @@ "@babel/helper-compilation-targets@^7.15.0": version "7.15.0" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.15.0.tgz#973df8cbd025515f3ff25db0c05efc704fa79818" + resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.15.0.tgz" integrity sha512-h+/9t0ncd4jfZ8wsdAsoIxSa61qhBYlycXiHWqJaQBCXAhDCMbPRSMTGnZIkkmt1u4ag+UQmuqcILwqKzZ4N2A== dependencies: "@babel/compat-data" "^7.15.0" @@ -56,7 +56,7 @@ "@babel/helper-function-name@^7.14.5": version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.14.5.tgz#89e2c474972f15d8e233b52ee8c480e2cfcd50c4" + resolved "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.14.5.tgz" integrity sha512-Gjna0AsXWfFvrAuX+VKcN/aNNWonizBj39yGwUzVDVTlMYJMK2Wp6xdpy72mfArFq5uK+NOuexfzZlzI1z9+AQ== dependencies: "@babel/helper-get-function-arity" "^7.14.5" @@ -65,35 +65,35 @@ "@babel/helper-get-function-arity@^7.14.5": version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.14.5.tgz#25fbfa579b0937eee1f3b805ece4ce398c431815" + resolved "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.14.5.tgz" integrity sha512-I1Db4Shst5lewOM4V+ZKJzQ0JGGaZ6VY1jYvMghRjqs6DWgxLCIyFt30GlnKkfUeFLpJt2vzbMVEXVSXlIFYUg== dependencies: "@babel/types" "^7.14.5" "@babel/helper-hoist-variables@^7.14.5": version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.14.5.tgz#e0dd27c33a78e577d7c8884916a3e7ef1f7c7f8d" + resolved "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.14.5.tgz" integrity sha512-R1PXiz31Uc0Vxy4OEOm07x0oSjKAdPPCh3tPivn/Eo8cvz6gveAeuyUUPB21Hoiif0uoPQSSdhIPS3352nvdyQ== dependencies: "@babel/types" "^7.14.5" "@babel/helper-member-expression-to-functions@^7.15.0": version "7.15.0" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.15.0.tgz#0ddaf5299c8179f27f37327936553e9bba60990b" + resolved "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.15.0.tgz" integrity sha512-Jq8H8U2kYiafuj2xMTPQwkTBnEEdGKpT35lJEQsRRjnG0LW3neucsaMWLgKcwu3OHKNeYugfw+Z20BXBSEs2Lg== dependencies: "@babel/types" "^7.15.0" "@babel/helper-module-imports@^7.14.5": version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.14.5.tgz#6d1a44df6a38c957aa7c312da076429f11b422f3" + resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.14.5.tgz" integrity sha512-SwrNHu5QWS84XlHwGYPDtCxcA0hrSlL2yhWYLgeOc0w7ccOl2qv4s/nARI0aYZW+bSwAL5CukeXA47B/1NKcnQ== dependencies: "@babel/types" "^7.14.5" "@babel/helper-module-transforms@^7.15.0": version "7.15.0" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.15.0.tgz#679275581ea056373eddbe360e1419ef23783b08" + resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.0.tgz" integrity sha512-RkGiW5Rer7fpXv9m1B3iHIFDZdItnO2/BLfWVW/9q7+KqQSDY5kUfQEbzdXM1MVhJGcugKV7kRrNVzNxmk7NBg== dependencies: "@babel/helper-module-imports" "^7.14.5" @@ -107,14 +107,14 @@ "@babel/helper-optimise-call-expression@^7.14.5": version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.14.5.tgz#f27395a8619e0665b3f0364cddb41c25d71b499c" + resolved "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.14.5.tgz" integrity sha512-IqiLIrODUOdnPU9/F8ib1Fx2ohlgDhxnIDU7OEVi+kAbEZcyiF7BLU8W6PfvPi9LzztjS7kcbzbmL7oG8kD6VA== dependencies: "@babel/types" "^7.14.5" "@babel/helper-replace-supers@^7.15.0": version "7.15.0" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.15.0.tgz#ace07708f5bf746bf2e6ba99572cce79b5d4e7f4" + resolved "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.15.0.tgz" integrity sha512-6O+eWrhx+HEra/uJnifCwhwMd6Bp5+ZfZeJwbqUTuqkhIT6YcRhiZCOOFChRypOIe0cV46kFrRBlm+t5vHCEaA== dependencies: "@babel/helper-member-expression-to-functions" "^7.15.0" @@ -124,31 +124,31 @@ "@babel/helper-simple-access@^7.14.8": version "7.14.8" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.14.8.tgz#82e1fec0644a7e775c74d305f212c39f8fe73924" + resolved "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.14.8.tgz" integrity sha512-TrFN4RHh9gnWEU+s7JloIho2T76GPwRHhdzOWLqTrMnlas8T9O7ec+oEDNsRXndOmru9ymH9DFrEOxpzPoSbdg== dependencies: "@babel/types" "^7.14.8" "@babel/helper-split-export-declaration@^7.14.5": version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.14.5.tgz#22b23a54ef51c2b7605d851930c1976dd0bc693a" + resolved "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.14.5.tgz" integrity sha512-hprxVPu6e5Kdp2puZUmvOGjaLv9TCe58E/Fl6hRq4YiVQxIcNvuq6uTM2r1mT/oPskuS9CgR+I94sqAYv0NGKA== dependencies: "@babel/types" "^7.14.5" "@babel/helper-validator-identifier@^7.14.5", "@babel/helper-validator-identifier@^7.14.9": version "7.14.9" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz#6654d171b2024f6d8ee151bf2509699919131d48" + resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz" integrity sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g== "@babel/helper-validator-option@^7.14.5": version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz#6e72a1fff18d5dfcb878e1e62f1a021c4b72d5a3" + resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz" integrity sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow== "@babel/helpers@^7.14.8": version "7.15.3" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.15.3.tgz#c96838b752b95dcd525b4e741ed40bb1dc2a1357" + resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.15.3.tgz" integrity sha512-HwJiz52XaS96lX+28Tnbu31VeFSQJGOeKHJeaEPQlTl7PnlhFElWPj8tUXtqFIzeN86XxXoBr+WFAyK2PPVz6g== dependencies: "@babel/template" "^7.14.5" @@ -157,26 +157,21 @@ "@babel/highlight@^7.14.5": version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.14.5.tgz#6861a52f03966405001f6aa534a01a24d99e8cd9" + resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz" integrity sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg== dependencies: "@babel/helper-validator-identifier" "^7.14.5" chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.14.5", "@babel/parser@^7.15.0": +"@babel/parser@^7.14.5", "@babel/parser@^7.15.0", "@babel/parser@^7.4.4": version "7.15.3" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.15.3.tgz#3416d9bea748052cfcb63dbcc27368105b1ed862" + resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.15.3.tgz" integrity sha512-O0L6v/HvqbdJawj0iBEfVQMc3/6WP+AeOsovsIgBFyJaG+W2w7eqvZB7puddATmWuARlm1SX7DwxJ/JJUnDpEA== -"@babel/parser@^7.4.4": - version "7.5.5" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.5.5.tgz#02f077ac8817d3df4a832ef59de67565e71cca4b" - integrity sha512-E5BN68cqR7dhKan1SfqgPGhQ178bkVKpXTPEXnFJBrEt8/DKRZlybmy+IgYLTeN7tp1R5Ccmbm2rBk17sHYU3g== - "@babel/template@^7.14.5": version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.14.5.tgz#a9bc9d8b33354ff6e55a9c60d1109200a68974f4" + resolved "https://registry.npmjs.org/@babel/template/-/template-7.14.5.tgz" integrity sha512-6Z3Po85sfxRGachLULUhOmvAaOo7xCvqGQtxINai2mEGPFm6pQ4z5QInFnUrRpfoSV60BnjyF5F3c+15fxFV1g== dependencies: "@babel/code-frame" "^7.14.5" @@ -185,7 +180,7 @@ "@babel/traverse@^7.15.0": version "7.15.0" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.15.0.tgz#4cca838fd1b2a03283c1f38e141f639d60b3fc98" + resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.15.0.tgz" integrity sha512-392d8BN0C9eVxVWd8H6x9WfipgVH5IaIoLp23334Sc1vbKKWINnvwRpb4us0xtPaCumlwbTtIYNA0Dv/32sVFw== dependencies: "@babel/code-frame" "^7.14.5" @@ -200,316 +195,292 @@ "@babel/types@^7.14.5", "@babel/types@^7.14.8", "@babel/types@^7.15.0": version "7.15.0" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.15.0.tgz#61af11f2286c4e9c69ca8deb5f4375a73c72dcbd" + resolved "https://registry.npmjs.org/@babel/types/-/types-7.15.0.tgz" integrity sha512-OBvfqnllOIdX4ojTHpwZbpvz4j3EWyjkZEdmjH0/cgsd6QOdSgU8rLSk6ard/pcW7rlmjdVSX/AWOaORR1uNOQ== dependencies: "@babel/helper-validator-identifier" "^7.14.9" to-fast-properties "^2.0.0" -abbrev@1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" - integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== - abstract-leveldown@~0.12.0, abstract-leveldown@~0.12.1: version "0.12.4" - resolved "https://registry.yarnpkg.com/abstract-leveldown/-/abstract-leveldown-0.12.4.tgz#29e18e632e60e4e221d5810247852a63d7b2e410" - integrity sha1-KeGOYy5g5OIh1YECR4UqY9ey5BA= + resolved "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-0.12.4.tgz" + integrity sha1-KeGOYy5g5OIh1YECR4UqY9ey5BA= sha512-TOod9d5RDExo6STLMGa+04HGkl+TlMfbDnTyN93/ETJ9DpQ0DaYLqcMZlbXvdc4W3vVo1Qrl+WhSp8zvDsJ+jA== dependencies: xtend "~3.0.0" acorn-jsx@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-3.0.1.tgz#afdf9488fb1ecefc8348f6fb22f464e32a58b36b" - integrity sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s= + resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz" + integrity sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s= sha512-AU7pnZkguthwBjKgCg6998ByQNIMjbuDQZ8bb78QAFZwPfmKia8AIzgY/gWgqCjnht8JLdXmB4YxA0KaV60ncQ== dependencies: acorn "^3.0.4" -acorn@4.0.4: - version "4.0.4" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.4.tgz#17a8d6a7a6c4ef538b814ec9abac2779293bf30a" - integrity sha1-F6jWp6bE71OLgU7Jq6wneSk78wo= - acorn@^3.0.4: version "3.3.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a" - integrity sha1-ReN/s56No/JbruP/U2niu18iAXo= + resolved "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz" + integrity sha1-ReN/s56No/JbruP/U2niu18iAXo= sha512-OLUyIIZ7mF5oaAUT1w0TFqQS81q3saT46x8t7ukpPjMNk+nbs4ZHhs7ToV8EWnLYLepjETXd4XaCE4uxkMeqUw== -acorn@^4.0.1: - version "4.0.11" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.11.tgz#edcda3bd937e7556410d42ed5860f67399c794c0" - integrity sha1-7c2jvZN+dVZBDULtWGD2c5nHlMA= +acorn@^4.0.1, acorn@4.0.4: + version "4.0.4" + resolved "https://registry.npmjs.org/acorn/-/acorn-4.0.4.tgz" + integrity sha1-F6jWp6bE71OLgU7Jq6wneSk78wo= sha512-q2rPPDFLTHr/KffXaU4UGvi4/a7LWaYGVJFqvjIIRyzqaUiH66bdLEs1UeSxrexjAWLH6gNb3HfFaPRvY8HFSw== ajv-keywords@^1.0.0: version "1.5.1" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-1.5.1.tgz#314dd0a4b3368fad3dfcdc54ede6171b886daf3c" - integrity sha1-MU3QpLM2j609/NxU7eYXG4htrzw= + resolved "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-1.5.1.tgz" + integrity sha1-MU3QpLM2j609/NxU7eYXG4htrzw= sha512-vuBv+fm2s6cqUyey2A7qYcvsik+GMDJsw8BARP2sDE76cqmaZVarsvHf7Vx6VJ0Xk8gLl+u3MoAPf6gKzJefeA== -ajv@^4.7.0: +ajv@^4.7.0, ajv@^4.9.1: version "4.11.5" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.5.tgz#b6ee74657b993a01dce44b7944d56f485828d5bd" - integrity sha1-tu50ZXuZOgHc5Et5RNVvSFgo1b0= - dependencies: - co "^4.6.0" - json-stable-stringify "^1.0.1" - -ajv@^4.9.1: - version "4.11.8" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536" - integrity sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY= + resolved "https://registry.npmjs.org/ajv/-/ajv-4.11.5.tgz" + integrity sha1-tu50ZXuZOgHc5Et5RNVvSFgo1b0= sha512-3fmOjaKrxgFuUjMyDV0GUcIm/8VovYtOWcUGF27HRcMr3Nz9koujegRDXf67/DniuzliiwZUEqe5WIbvW27Qiw== dependencies: co "^4.6.0" json-stable-stringify "^1.0.1" ansi-escape-sequences@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/ansi-escape-sequences/-/ansi-escape-sequences-3.0.0.tgz#1c18394b6af9b76ff9a63509fa497669fd2ce53e" - integrity sha1-HBg5S2r5t2/5pjUJ+kl2af0s5T4= + resolved "https://registry.npmjs.org/ansi-escape-sequences/-/ansi-escape-sequences-3.0.0.tgz" + integrity sha1-HBg5S2r5t2/5pjUJ+kl2af0s5T4= sha512-nOj2mwGB2lJzx9YDqaiI77vYh4SWcOCTday6kdtx6ojUk1s1HqSiK604UIq8jlBVC0UBsX7Bph3SfOf9QsJerA== dependencies: array-back "^1.0.3" ansi-escape-sequences@^4.0.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/ansi-escape-sequences/-/ansi-escape-sequences-4.1.0.tgz#2483c8773f50dd9174dd9557e92b1718f1816097" + resolved "https://registry.npmjs.org/ansi-escape-sequences/-/ansi-escape-sequences-4.1.0.tgz" integrity sha512-dzW9kHxH011uBsidTXd14JXgzye/YLb2LzeKZ4bsgl/Knwx8AtbSFkkGxagdNOoh0DlqHCmfiEjWKBaqjOanVw== dependencies: array-back "^3.0.1" ansi-escapes@^1.1.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" - integrity sha1-06ioOzGapneTZisT52HHkRQiMG4= + resolved "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz" + integrity sha1-06ioOzGapneTZisT52HHkRQiMG4= sha512-wiXutNjDUlNEDWHcYH3jtZUhd3c4/VojassD8zHdHCY13xbZy2XbW+NKQwA0tWGBVzDA9qEzYwfoSsWmviidhw== ansi-regex@^0.2.0, ansi-regex@^0.2.1: version "0.2.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-0.2.1.tgz#0d8e946967a3d8143f93e24e298525fc1b2235f9" - integrity sha1-DY6UaWej2BQ/k+JOKYUl/BsiNfk= + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-0.2.1.tgz" + integrity sha1-DY6UaWej2BQ/k+JOKYUl/BsiNfk= sha512-sGwIGMjhYdW26/IhwK2gkWWI8DRCVO6uj3hYgHT+zD+QL1pa37tM3ujhyfcJIYSbsxp7Gxhy7zrRW/1AHm4BmA== ansi-regex@^2.0.0: version "2.1.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" - integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= - -ansi-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" - integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz" + integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA== ansi-styles@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-1.1.0.tgz#eaecbf66cd706882760b2f4691582b8f55d7a7de" - integrity sha1-6uy/Zs1waIJ2Cy9GkVgrj1XXp94= + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.1.0.tgz" + integrity sha1-6uy/Zs1waIJ2Cy9GkVgrj1XXp94= sha512-f2PKUkN5QngiSemowa6Mrk9MPCdtFiOSmibjZ+j1qhLGHHYsqZwmBMRF3IRMVXo8sybDqx2fJl2d/8OphBoWkA== ansi-styles@^2.2.1: version "2.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" - integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz" + integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA== ansi-styles@^3.2.1: version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz" integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== dependencies: color-convert "^1.9.0" anymatch@^1.3.0: version "1.3.2" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-1.3.2.tgz#553dcb8f91e3c889845dfdba34c77721b90b9d7a" + resolved "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz" integrity sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA== dependencies: micromatch "^2.1.5" normalize-path "^2.0.0" -aproba@^1.0.3: - version "1.2.0" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" - integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== - archive-type@^3.0.0, archive-type@^3.0.1: version "3.2.0" - resolved "https://registry.yarnpkg.com/archive-type/-/archive-type-3.2.0.tgz#9cd9c006957ebe95fadad5bd6098942a813737f6" - integrity sha1-nNnABpV+vpX62tW9YJiUKoE3N/Y= + resolved "https://registry.npmjs.org/archive-type/-/archive-type-3.2.0.tgz" + integrity sha1-nNnABpV+vpX62tW9YJiUKoE3N/Y= sha512-6cAWDM0lUYTbb7F436FAjbBYnsn5E3L2AgTOLzrFfLt7FVM6uJwKUvllE8VjLKTmKCU8PqtWlUAezEYjg5iGqA== dependencies: file-type "^3.1.0" -are-we-there-yet@~1.1.2: - version "1.1.5" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21" - integrity sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w== - dependencies: - delegates "^1.0.0" - readable-stream "^2.0.6" - argparse@^1.0.7: version "1.0.9" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86" - integrity sha1-c9g7wmP4bpf4zE9rrhsOkKfSLIY= + resolved "https://registry.npmjs.org/argparse/-/argparse-1.0.9.tgz" + integrity sha1-c9g7wmP4bpf4zE9rrhsOkKfSLIY= sha512-iK7YPKV+GsvihPUTKcM3hh2gq47zSFCpVDv/Ay2O9mzuD7dfvLV4vhms4XcjZvv4VRgXuGLMEts51IlTjS11/A== dependencies: sprintf-js "~1.0.2" arr-diff@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" - integrity sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8= + resolved "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz" + integrity sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8= sha512-dtXTVMkh6VkEEA7OhXnN1Ecb8aAGFdZ1LFxtOCoqj4qkyOJMt7+qs6Ahdy6p/NQCPYsRSXXivhSB/J5E9jmYKA== dependencies: arr-flatten "^1.0.1" arr-diff@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" - integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= + resolved "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz" + integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA== arr-flatten@^1.0.1, arr-flatten@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" + resolved "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz" integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== arr-union@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" - integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= + resolved "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz" + integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q== -array-back@^1.0.2, array-back@^1.0.3, array-back@^1.0.4: +array-back@^1.0.2: version "1.0.4" - resolved "https://registry.yarnpkg.com/array-back/-/array-back-1.0.4.tgz#644ba7f095f7ffcf7c43b5f0dc39d3c1f03c063b" - integrity sha1-ZEun8JX3/898Q7Xw3DnTwfA8Bjs= + resolved "https://registry.npmjs.org/array-back/-/array-back-1.0.4.tgz" + integrity sha1-ZEun8JX3/898Q7Xw3DnTwfA8Bjs= sha512-1WxbZvrmyhkNoeYcizokbmh5oiOCIfyvGtcqbK3Ls1v1fKcquzxnQSceOx6tzq7jmai2kFLWIpGND2cLhH6TPw== + dependencies: + typical "^2.6.0" + +array-back@^1.0.3, array-back@^1.0.4: + version "1.0.4" + resolved "https://registry.npmjs.org/array-back/-/array-back-1.0.4.tgz" + integrity sha1-ZEun8JX3/898Q7Xw3DnTwfA8Bjs= sha512-1WxbZvrmyhkNoeYcizokbmh5oiOCIfyvGtcqbK3Ls1v1fKcquzxnQSceOx6tzq7jmai2kFLWIpGND2cLhH6TPw== dependencies: typical "^2.6.0" array-back@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/array-back/-/array-back-2.0.0.tgz#6877471d51ecc9c9bfa6136fb6c7d5fe69748022" + resolved "https://registry.npmjs.org/array-back/-/array-back-2.0.0.tgz" integrity sha512-eJv4pLLufP3g5kcZry0j6WXpIbzYw9GUB4mVJZno9wfwiBxbizTnHCw3VJb07cBihbFX48Y7oSrW9y+gt4glyw== dependencies: typical "^2.6.1" array-back@^3.0.1: version "3.1.0" - resolved "https://registry.yarnpkg.com/array-back/-/array-back-3.1.0.tgz#b8859d7a508871c9a7b2cf42f99428f65e96bfb0" + resolved "https://registry.npmjs.org/array-back/-/array-back-3.1.0.tgz" integrity sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q== array-back@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/array-back/-/array-back-4.0.0.tgz#27241bed9cc7d65974cf8c5ca7d66b9fdbd2a943" + resolved "https://registry.npmjs.org/array-back/-/array-back-4.0.0.tgz" integrity sha512-ylVYjv5BzoWXWO7e6fWrzjqzgxmUPWdQrHxgzo/v1EaYXfw6+6ipRdIr7KryAGnVHG08O1Yfpchuv0+YhjPL+Q== array-differ@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-1.0.0.tgz#eff52e3758249d33be402b8bb8e564bb2b5d4031" - integrity sha1-7/UuN1gknTO+QCuLuOVkuytdQDE= + resolved "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz" + integrity sha1-7/UuN1gknTO+QCuLuOVkuytdQDE= sha512-LeZY+DZDRnvP7eMuQ6LHfCzUGxAAIViUBliK24P3hWXL6y4SortgR6Nim6xrkfSLlmH0+k+9NYNwVC2s53ZrYQ== array-union@^1.0.1: version "1.0.2" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" - integrity sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk= + resolved "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz" + integrity sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk= sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng== dependencies: array-uniq "^1.0.1" array-uniq@^1.0.1, array-uniq@^1.0.2: version "1.0.3" - resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" - integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY= + resolved "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz" + integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY= sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q== array-unique@^0.2.1: version "0.2.1" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" - integrity sha1-odl8yvy8JiXMcPrc6zalDFiwGlM= + resolved "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz" + integrity sha1-odl8yvy8JiXMcPrc6zalDFiwGlM= sha512-G2n5bG5fSUCpnsXz4+8FUkYsGPkNfLn9YvS66U5qbTIXI2Ynnlo4Bi42bWv+omKUCqz+ejzfClwne0alJWJPhg== array-unique@^0.3.2: version "0.3.2" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" - integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= + resolved "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz" + integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ== arrify@^1.0.0, arrify@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" - integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= + resolved "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz" + integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA== asn1.js@^4.0.0: version "4.9.1" - resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.9.1.tgz#48ba240b45a9280e94748990ba597d216617fd40" - integrity sha1-SLokC0WpKA6UdImQull9IWYX/UA= + resolved "https://registry.npmjs.org/asn1.js/-/asn1.js-4.9.1.tgz" + integrity sha1-SLokC0WpKA6UdImQull9IWYX/UA= sha512-2bgTMPN2ajcSKk7lxDNHdBzhikvJP0F2RYoAeaECCWliwixxKxOd1YCT9nulJem1SbQ0eFI5b6w6Ux8fwxACLg== dependencies: bn.js "^4.0.0" inherits "^2.0.1" minimalistic-assert "^1.0.0" -asn1@0.1.11: - version "0.1.11" - resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.1.11.tgz#559be18376d08a4ec4dbe80877d27818639b2df7" - integrity sha1-VZvhg3bQik7E2+gId9J4GGObLfc= - asn1@~0.2.3: version "0.2.4" - resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136" + resolved "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz" integrity sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg== dependencies: safer-buffer "~2.1.0" -assert-plus@1.0.0, assert-plus@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" - integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= +asn1@0.1.11: + version "0.1.11" + resolved "https://registry.npmjs.org/asn1/-/asn1-0.1.11.tgz" + integrity sha1-VZvhg3bQik7E2+gId9J4GGObLfc= sha512-Fh9zh3G2mZ8qM/kwsiKwL2U2FmXxVsboP4x1mXjnhKHv3SmzaBZoYvxEQJz/YS2gnCgd8xlAVWcZnQyC9qZBsA== assert-plus@^0.1.5: version "0.1.5" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.1.5.tgz#ee74009413002d84cec7219c6ac811812e723160" - integrity sha1-7nQAlBMALYTOxyGcasgRgS5yMWA= + resolved "https://registry.npmjs.org/assert-plus/-/assert-plus-0.1.5.tgz" + integrity sha1-7nQAlBMALYTOxyGcasgRgS5yMWA= sha512-brU24g7ryhRwGCI2y+1dGQmQXiZF7TtIj583S96y0jjdajIe6wn8BuXyELYhvD22dtIxDQVFk04YTJwwdwOYJw== assert-plus@^0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" - integrity sha1-104bh+ev/A24qttwIfP+SBAasjQ= + resolved "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz" + integrity sha1-104bh+ev/A24qttwIfP+SBAasjQ= sha512-u1L0ZLywRziOVjUhRxI0Qg9G+4RnFB9H/Rq40YWn0dieDgO7vAYeJz6jKAO6t/aruzlDFLAPkQTT87e+f8Imaw== + +assert-plus@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz" + integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw== + +assert-plus@1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz" + integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw== assign-symbols@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" - integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= + resolved "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz" + integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw== async-array-reduce@^0.2.0: version "0.2.1" - resolved "https://registry.yarnpkg.com/async-array-reduce/-/async-array-reduce-0.2.1.tgz#c8be010a2b5cd00dea96c81116034693dfdd82d1" - integrity sha1-yL4BCitc0A3qlsgRFgNGk9/dgtE= + resolved "https://registry.npmjs.org/async-array-reduce/-/async-array-reduce-0.2.1.tgz" + integrity sha1-yL4BCitc0A3qlsgRFgNGk9/dgtE= sha512-/ywTADOcaEnwiAnOEi0UB/rAcIq5bTFfCV9euv3jLYFUMmy6KvKccTQUnLlp8Ensmfj43wHSmbGiPqjsZ6RhNA== async-each-series@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/async-each-series/-/async-each-series-1.1.0.tgz#f42fd8155d38f21a5b8ea07c28e063ed1700b138" - integrity sha1-9C/YFV048hpbjqB8KOBj7RcAsTg= + resolved "https://registry.npmjs.org/async-each-series/-/async-each-series-1.1.0.tgz" + integrity sha1-9C/YFV048hpbjqB8KOBj7RcAsTg= sha512-/VIpPVIJJlJObJiXkHBJ1RhjDtydBRG/3/dWpsXoVGOShNw5tameXnC7Yys+wpb0p/myItxGmSGgNi/dNlsIiA== async-each@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" - integrity sha1-GdOGodntxufByF04iu28xW0zYC0= - -async@1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/async/-/async-1.2.1.tgz#a4816a17cd5ff516dfa2c7698a453369b9790de0" - integrity sha1-pIFqF81f9RbfosdpikUzabl5DeA= + resolved "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz" + integrity sha1-GdOGodntxufByF04iu28xW0zYC0= sha512-STDwmg+1mv249vNFx+s+sF4HrdLxlF5Z6L4npilrkgchWPEuW4X13gKzSJq51qJy9InOgwmPepgfMb9/Qu0fSg== async@^1.5.2: version "1.5.2" - resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" - integrity sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo= + resolved "https://registry.npmjs.org/async/-/async-1.5.2.tgz" + integrity sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo= sha512-nSVgobk4rv61R9PUSDtYt7mPVB2olxNR5RWJcAsH676/ef11bUZwvu7+RGYrYauVdDPcO519v68wRhXQtxsV9w== async@~0.9.0: version "0.9.0" - resolved "https://registry.yarnpkg.com/async/-/async-0.9.0.tgz#ac3613b1da9bed1b47510bb4651b8931e47146c7" - integrity sha1-rDYTsdqb7RtHUQu0ZRuJMeRxRsc= + resolved "https://registry.npmjs.org/async/-/async-0.9.0.tgz" + integrity sha1-rDYTsdqb7RtHUQu0ZRuJMeRxRsc= sha512-XQJ3MipmCHAIBBMFfu2jaSetneOrXbSyyqeU3Nod867oNOpS+i9FEms5PWgjMxSgBybRf2IVVLtr1YfrDO+okg== + +async@1.2.1: + version "1.2.1" + resolved "https://registry.npmjs.org/async/-/async-1.2.1.tgz" + integrity sha1-pIFqF81f9RbfosdpikUzabl5DeA= sha512-UMnr1f7iakrFTqRSvkCUv3Fs7dMHN5XYWXLlzmKUMhJpOYlCxgI/zQd6kYnEuxhCAULUfP0jtMSiTbpGNbhskw== asynckit@^0.4.0: version "0.4.0" - resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= + resolved "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz" + integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== atob@^2.1.1: version "2.1.2" - resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" + resolved "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz" integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== aws-sdk@2.162.0: version "2.162.0" - resolved "https://registry.yarnpkg.com/aws-sdk/-/aws-sdk-2.162.0.tgz#1b16215fc9b599ba7cd2cfe7ce050c7f934381a6" - integrity sha1-GxYhX8m1mbp80s/nzgUMf5NDgaY= + resolved "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.162.0.tgz" + integrity sha1-GxYhX8m1mbp80s/nzgUMf5NDgaY= sha512-evnvrliJ7+qwRpJ4SkAnoz0BBggDWwT7oIT0q10cWrw11O+I2MOtFzTCxkS3AGG5kDQJyckhYi6m5DVRLBvKpg== dependencies: buffer "4.9.1" crypto-browserify "1.0.9" @@ -524,41 +495,32 @@ aws-sdk@2.162.0: aws-sign2@~0.5.0: version "0.5.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.5.0.tgz#c57103f7a17fc037f02d7c2e64b602ea223f7d63" - integrity sha1-xXED96F/wDfwLXwuZLYC6iI/fWM= + resolved "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.5.0.tgz" + integrity sha1-xXED96F/wDfwLXwuZLYC6iI/fWM= sha512-oqUX0DM5j7aPWPCnpWebiyNIj2wiNI87ZxnOMoGv0aE4TGlBy2N+5iWc6dQ/NOKZaBD2W6PVz8jtOGkWzSC5EA== aws-sign2@~0.6.0: version "0.6.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" - integrity sha1-FDQt0428yU0OW4fXY81jYSwOeU8= + resolved "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz" + integrity sha1-FDQt0428yU0OW4fXY81jYSwOeU8= sha512-JnJpAS0p9RmixkOvW2XwDxxzs1bd4/VAGIl6Q0EC5YOo+p+hqIhtDhn/nmFnB/xUNXbLkpE2mOjgVIBRKD4xYw== aws4@^1.2.1: version "1.8.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.8.0.tgz#f0e003d9ca9e7f59c7a508945d7b2ef9a04a542f" + resolved "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz" integrity sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ== -babel-code-frame@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.22.0.tgz#027620bee567a88c32561574e7fd0801d33118e4" - integrity sha1-AnYgvuVnqIwyVhV05/0IAdMxGOQ= - dependencies: - chalk "^1.1.0" - esutils "^2.0.2" - js-tokens "^3.0.0" - babel-code-frame@^6.26.0: version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" - integrity sha1-Y/1D99weO7fONZR9uP42mj9Yx0s= + resolved "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz" + integrity sha1-Y/1D99weO7fONZR9uP42mj9Yx0s= sha512-XqYMR2dfdGMW+hd0IUZ2PwK+fGeFkOxZJ0wY+JaQAHzt1Zx8LcvpiZD2NiGkEG8qx0CfkAOr5xt76d1e8vG90g== dependencies: chalk "^1.1.3" esutils "^2.0.2" js-tokens "^3.0.2" -babel-core@6.26.0, babel-core@^6.26.0: +babel-core@^6.26.0, babel-core@6.26.0: version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.0.tgz#af32f78b31a6fcef119c87b0fd8d9753f03a0bb8" - integrity sha1-rzL3izGm/O8RnIew/Y2XU/A6C7g= + resolved "https://registry.npmjs.org/babel-core/-/babel-core-6.26.0.tgz" + integrity sha1-rzL3izGm/O8RnIew/Y2XU/A6C7g= sha512-FSiqfr4SYrH5Zv5KgWahyY99VC+Aod1ioMRNvL1lPS4WTUqvPAdYo7ioWEhDHEDqZADapbJZMX0sBuRsc93bDQ== dependencies: babel-code-frame "^6.26.0" babel-generator "^6.26.0" @@ -582,8 +544,8 @@ babel-core@6.26.0, babel-core@^6.26.0: babel-eslint@6.1.x: version "6.1.2" - resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-6.1.2.tgz#5293419fe3672d66598d327da9694567ba6a5f2f" - integrity sha1-UpNBn+NnLWZZjTJ9qWlFZ7pqXy8= + resolved "https://registry.npmjs.org/babel-eslint/-/babel-eslint-6.1.2.tgz" + integrity sha1-UpNBn+NnLWZZjTJ9qWlFZ7pqXy8= sha512-BvFokAiUA0ZXeIzOr/v5m5Hu8IpTNc19ZBVEXn9ISBfRWddI2aUZ31kdlrzQXuXvPvq0wlyf7aw7KB85c9OcUw== dependencies: babel-traverse "^6.0.20" babel-types "^6.0.19" @@ -591,10 +553,24 @@ babel-eslint@6.1.x: lodash.assign "^4.0.0" lodash.pickby "^4.0.0" +babel-generator@^6.26.0: + version "6.26.0" + resolved "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.0.tgz" + integrity sha1-rBriAHC3n248odMmlhMFN3TyDcU= sha512-9SxJ4+NI4HBbS3U5wtiY+Fd/XRH8D4WHeeQVwViYijL73U1jXQHjxmn9aOiD+/orbvw7YgakoyO3eejaE3Gk2Q== + dependencies: + babel-messages "^6.23.0" + babel-runtime "^6.26.0" + babel-types "^6.26.0" + detect-indent "^4.0.0" + jsesc "^1.3.0" + lodash "^4.17.4" + source-map "^0.5.6" + trim-right "^1.0.1" + babel-generator@6.16.0: version "6.16.0" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.16.0.tgz#2c38ee62699adce265f0a32ce18a2c21cf0fca78" - integrity sha1-LDjuYmma3OJl8KMs4YosIc8Pyng= + resolved "https://registry.npmjs.org/babel-generator/-/babel-generator-6.16.0.tgz" + integrity sha1-LDjuYmma3OJl8KMs4YosIc8Pyng= sha512-Wgez1OljxMOrt2qla4wtkUWJIwrbXKfeNjzwWrj11cla1Q6JELGPcQ/PYCoxDMnAvdoNNPeWBIRNrTukabL0eg== dependencies: babel-messages "^6.8.0" babel-runtime "^6.9.0" @@ -606,8 +582,8 @@ babel-generator@6.16.0: babel-generator@6.24.1: version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.24.1.tgz#e715f486c58ded25649d888944d52aa07c5d9497" - integrity sha1-5xX0hsWN7SVknYiJRNUqoHxdlJc= + resolved "https://registry.npmjs.org/babel-generator/-/babel-generator-6.24.1.tgz" + integrity sha1-5xX0hsWN7SVknYiJRNUqoHxdlJc= sha512-9mwrTIUjqFxVgAUlXGBhD89MAkYSz+ObfVoQ1UF9KH8g4ndwYUqtWLgnRCezq/xtLm8PbRtr5HdQznTxAXpHPw== dependencies: babel-messages "^6.23.0" babel-runtime "^6.22.0" @@ -620,8 +596,8 @@ babel-generator@6.24.1: babel-generator@6.25.0: version "6.25.0" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.25.0.tgz#33a1af70d5f2890aeb465a4a7793c1df6a9ea9fc" - integrity sha1-M6GvcNXyiQrrRlpKd5PB32qeqfw= + resolved "https://registry.npmjs.org/babel-generator/-/babel-generator-6.25.0.tgz" + integrity sha1-M6GvcNXyiQrrRlpKd5PB32qeqfw= sha512-mfylq1PJtHEQBne/B45jQoveo7Vc1xKDM3/3ihNKrag8eym+TeoVl/xJsNtvGPBTlcc076zU0ycHV9plQeDYnw== dependencies: babel-messages "^6.23.0" babel-runtime "^6.22.0" @@ -632,24 +608,10 @@ babel-generator@6.25.0: source-map "^0.5.0" trim-right "^1.0.1" -babel-generator@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.0.tgz#ac1ae20070b79f6e3ca1d3269613053774f20dc5" - integrity sha1-rBriAHC3n248odMmlhMFN3TyDcU= - dependencies: - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - detect-indent "^4.0.0" - jsesc "^1.3.0" - lodash "^4.17.4" - source-map "^0.5.6" - trim-right "^1.0.1" - babel-helper-builder-binary-assignment-operator-visitor@^6.24.1: version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz#cce4517ada356f4220bcae8a02c2b346f9a56664" - integrity sha1-zORReto1b0IgvK6KAsKzRvmlZmQ= + resolved "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz" + integrity sha1-zORReto1b0IgvK6KAsKzRvmlZmQ= sha512-gCtfYORSG1fUMX4kKraymq607FWgMWg+j42IFPc18kFQEsmtaibP4UrqsXt8FlEJle25HUd4tsoDR7H2wDhe9Q== dependencies: babel-helper-explode-assignable-expression "^6.24.1" babel-runtime "^6.22.0" @@ -657,8 +619,8 @@ babel-helper-builder-binary-assignment-operator-visitor@^6.24.1: babel-helper-call-delegate@^6.24.1: version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz#ece6aacddc76e41c3461f88bfc575bd0daa2df8d" - integrity sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340= + resolved "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz" + integrity sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340= sha512-RL8n2NiEj+kKztlrVJM9JT1cXzzAdvWFh76xh/H1I4nKwunzE4INBXn8ieCZ+wh4zWszZk7NBS1s/8HR5jDkzQ== dependencies: babel-helper-hoist-variables "^6.24.1" babel-runtime "^6.22.0" @@ -667,8 +629,8 @@ babel-helper-call-delegate@^6.24.1: babel-helper-define-map@^6.24.1: version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz#a5f56dab41a25f97ecb498c7ebaca9819f95be5f" - integrity sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8= + resolved "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz" + integrity sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8= sha512-bHkmjcC9lM1kmZcVpA5t2om2nzT/xiZpo6TJq7UlZ3wqKfzia4veeXbIhKvJXAMzhhEBd3cR1IElL5AenWEUpA== dependencies: babel-helper-function-name "^6.24.1" babel-runtime "^6.26.0" @@ -677,13 +639,13 @@ babel-helper-define-map@^6.24.1: babel-helper-evaluate-path@^0.5.0: version "0.5.0" - resolved "https://registry.yarnpkg.com/babel-helper-evaluate-path/-/babel-helper-evaluate-path-0.5.0.tgz#a62fa9c4e64ff7ea5cea9353174ef023a900a67c" + resolved "https://registry.npmjs.org/babel-helper-evaluate-path/-/babel-helper-evaluate-path-0.5.0.tgz" integrity sha512-mUh0UhS607bGh5wUMAQfOpt2JX2ThXMtppHRdRU1kL7ZLRWIXxoV2UIV1r2cAeeNeU1M5SB5/RSUgUxrK8yOkA== babel-helper-explode-assignable-expression@^6.24.1: version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz#f25b82cf7dc10433c55f70592d5746400ac22caa" - integrity sha1-8luCz33BBDPFX3BZLVdGQArCLKo= + resolved "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz" + integrity sha1-8luCz33BBDPFX3BZLVdGQArCLKo= sha512-qe5csbhbvq6ccry9G7tkXbzNtcDiH4r51rrPUbwwoTzZ18AqxWYRZT6AOmxrpxKnQBW0pYlBI/8vh73Z//78nQ== dependencies: babel-runtime "^6.22.0" babel-traverse "^6.24.1" @@ -691,24 +653,13 @@ babel-helper-explode-assignable-expression@^6.24.1: babel-helper-flip-expressions@^0.4.3: version "0.4.3" - resolved "https://registry.yarnpkg.com/babel-helper-flip-expressions/-/babel-helper-flip-expressions-0.4.3.tgz#3696736a128ac18bc25254b5f40a22ceb3c1d3fd" - integrity sha1-NpZzahKKwYvCUlS19AoizrPB0/0= - -babel-helper-function-name@^6.22.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.23.0.tgz#25742d67175c8903dbe4b6cb9d9e1fcb8dcf23a6" - integrity sha1-JXQtZxdciQPb5LbLnZ4fy43PI6Y= - dependencies: - babel-helper-get-function-arity "^6.22.0" - babel-runtime "^6.22.0" - babel-template "^6.23.0" - babel-traverse "^6.23.0" - babel-types "^6.23.0" + resolved "https://registry.npmjs.org/babel-helper-flip-expressions/-/babel-helper-flip-expressions-0.4.3.tgz" + integrity sha1-NpZzahKKwYvCUlS19AoizrPB0/0= sha512-rSrkRW4YQ2ETCWww9gbsWk4N0x1BOtln349Tk0dlCS90oT68WMLyGR7WvaMp3eAnsVrCqdUtC19lo1avyGPejA== -babel-helper-function-name@^6.24.1: +babel-helper-function-name@^6.22.0, babel-helper-function-name@^6.24.1: version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz#d3475b8c03ed98242a25b48351ab18399d3580a9" - integrity sha1-00dbjAPtmCQqJbSDUasYOZ01gKk= + resolved "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz" + integrity sha1-00dbjAPtmCQqJbSDUasYOZ01gKk= sha512-Oo6+e2iX+o9eVvJ9Y5eKL5iryeRdsIkwRYheCuhYdVHsdEQysbc2z2QkqCLIYnNxkT5Ss3ggrHdXiDI7Dhrn4Q== dependencies: babel-helper-get-function-arity "^6.24.1" babel-runtime "^6.22.0" @@ -716,65 +667,49 @@ babel-helper-function-name@^6.24.1: babel-traverse "^6.24.1" babel-types "^6.24.1" -babel-helper-get-function-arity@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.22.0.tgz#0beb464ad69dc7347410ac6ade9f03a50634f5ce" - integrity sha1-C+tGStadxzR0EKxq3p8DpQY09c4= - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.22.0" - babel-helper-get-function-arity@^6.24.1: version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz#8f7782aa93407c41d3aa50908f89b031b1b6853d" - integrity sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0= + resolved "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz" + integrity sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0= sha512-WfgKFX6swFB1jS2vo+DwivRN4NB8XUdM3ij0Y1gnC21y1tdBoe6xjVnd7NSI6alv+gZXCtJqvrTeMW3fR/c0ng== dependencies: babel-runtime "^6.22.0" babel-types "^6.24.1" babel-helper-hoist-variables@^6.24.1: version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz#1ecb27689c9d25513eadbc9914a73f5408be7a76" - integrity sha1-HssnaJydJVE+rbyZFKc/VAi+enY= + resolved "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz" + integrity sha1-HssnaJydJVE+rbyZFKc/VAi+enY= sha512-zAYl3tqerLItvG5cKYw7f1SpvIxS9zi7ohyGHaI9cgDUjAT6YcY9jIEH5CstetP5wHIVSceXwNS7Z5BpJg+rOw== dependencies: babel-runtime "^6.22.0" babel-types "^6.24.1" babel-helper-is-nodes-equiv@^0.0.1: version "0.0.1" - resolved "https://registry.yarnpkg.com/babel-helper-is-nodes-equiv/-/babel-helper-is-nodes-equiv-0.0.1.tgz#34e9b300b1479ddd98ec77ea0bbe9342dfe39684" - integrity sha1-NOmzALFHnd2Y7HfqC76TQt/jloQ= + resolved "https://registry.npmjs.org/babel-helper-is-nodes-equiv/-/babel-helper-is-nodes-equiv-0.0.1.tgz" + integrity sha1-NOmzALFHnd2Y7HfqC76TQt/jloQ= sha512-ri/nsMFVRqXn7IyT5qW4/hIAGQxuYUFHa3qsxmPtbk6spZQcYlyDogfVpNm2XYOslH/ULS4VEJGUqQX5u7ACQw== babel-helper-is-void-0@^0.4.3: version "0.4.3" - resolved "https://registry.yarnpkg.com/babel-helper-is-void-0/-/babel-helper-is-void-0-0.4.3.tgz#7d9c01b4561e7b95dbda0f6eee48f5b60e67313e" - integrity sha1-fZwBtFYee5Xb2g9u7kj1tg5nMT4= + resolved "https://registry.npmjs.org/babel-helper-is-void-0/-/babel-helper-is-void-0-0.4.3.tgz" + integrity sha1-fZwBtFYee5Xb2g9u7kj1tg5nMT4= sha512-07rBV0xPRM3TM5NVJEOQEkECX3qnHDjaIbFvWYPv+T1ajpUiVLiqTfC+MmiZxY5KOL/Ec08vJdJD9kZiP9UkUg== babel-helper-mark-eval-scopes@^0.4.3: version "0.4.3" - resolved "https://registry.yarnpkg.com/babel-helper-mark-eval-scopes/-/babel-helper-mark-eval-scopes-0.4.3.tgz#d244a3bef9844872603ffb46e22ce8acdf551562" - integrity sha1-0kSjvvmESHJgP/tG4izorN9VFWI= - -babel-helper-optimise-call-expression@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.23.0.tgz#f3ee7eed355b4282138b33d02b78369e470622f5" - integrity sha1-8+5+7TVbQoITizPQK3g2nkcGIvU= - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.23.0" + resolved "https://registry.npmjs.org/babel-helper-mark-eval-scopes/-/babel-helper-mark-eval-scopes-0.4.3.tgz" + integrity sha1-0kSjvvmESHJgP/tG4izorN9VFWI= sha512-+d/mXPP33bhgHkdVOiPkmYoeXJ+rXRWi7OdhwpyseIqOS8CmzHQXHUp/+/Qr8baXsT0kjGpMHHofHs6C3cskdA== babel-helper-optimise-call-expression@^6.24.1: version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz#f7a13427ba9f73f8f4fa993c54a97882d1244257" - integrity sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc= + resolved "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz" + integrity sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc= sha512-Op9IhEaxhbRT8MDXx2iNuMgciu2V8lDvYCNQbDGjdBNCjaMvyLf4wl4A3b8IgndCyQF8TwfgsQ8T3VD8aX1/pA== dependencies: babel-runtime "^6.22.0" babel-types "^6.24.1" babel-helper-regex@^6.22.0: version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.22.0.tgz#79f532be1647b1f0ee3474b5f5c3da58001d247d" - integrity sha1-efUyvhZHsfDuNHS19cPaWAAdJH0= + resolved "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.22.0.tgz" + integrity sha1-efUyvhZHsfDuNHS19cPaWAAdJH0= sha512-DHYGJFuhwdyakKUqSsT9BvIWxPk4Q9n3GCD25tE3i6/ShpcjWU+/uAjjALtd0gumuEHe90df+GR6XK00wKFThw== dependencies: babel-runtime "^6.22.0" babel-types "^6.22.0" @@ -782,8 +717,8 @@ babel-helper-regex@^6.22.0: babel-helper-remap-async-to-generator@^6.24.1: version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b" - integrity sha1-XsWBgnrXI/7N04HxySg5BnbkVRs= + resolved "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz" + integrity sha1-XsWBgnrXI/7N04HxySg5BnbkVRs= sha512-RYqaPD0mQyQIFRu7Ho5wE2yvA/5jxqCIj/Lv4BXNq23mHYu/vxikOy2JueLiBxQknwapwrJeNCesvY0ZcfnlHg== dependencies: babel-helper-function-name "^6.24.1" babel-runtime "^6.22.0" @@ -793,25 +728,13 @@ babel-helper-remap-async-to-generator@^6.24.1: babel-helper-remove-or-void@^0.4.3: version "0.4.3" - resolved "https://registry.yarnpkg.com/babel-helper-remove-or-void/-/babel-helper-remove-or-void-0.4.3.tgz#a4f03b40077a0ffe88e45d07010dee241ff5ae60" - integrity sha1-pPA7QAd6D/6I5F0HAQ3uJB/1rmA= - -babel-helper-replace-supers@^6.22.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.23.0.tgz#eeaf8ad9b58ec4337ca94223bacdca1f8d9b4bfd" - integrity sha1-7q+K2bWOxDN8qUIjus3KH42bS/0= - dependencies: - babel-helper-optimise-call-expression "^6.23.0" - babel-messages "^6.23.0" - babel-runtime "^6.22.0" - babel-template "^6.23.0" - babel-traverse "^6.23.0" - babel-types "^6.23.0" + resolved "https://registry.npmjs.org/babel-helper-remove-or-void/-/babel-helper-remove-or-void-0.4.3.tgz" + integrity sha1-pPA7QAd6D/6I5F0HAQ3uJB/1rmA= sha512-eYNceYtcGKpifHDir62gHJadVXdg9fAhuZEXiRQnJJ4Yi4oUTpqpNY//1pM4nVyjjDMPYaC2xSf0I+9IqVzwdA== -babel-helper-replace-supers@^6.24.1: +babel-helper-replace-supers@^6.22.0, babel-helper-replace-supers@^6.24.1: version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz#bf6dbfe43938d17369a213ca8a8bf74b6a90ab1a" - integrity sha1-v22/5Dk40XNpohPKiov3S2qQqxo= + resolved "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz" + integrity sha1-v22/5Dk40XNpohPKiov3S2qQqxo= sha512-sLI+u7sXJh6+ToqDr57Bv973kCepItDhMou0xCP2YPVmR1jkHSCY+p1no8xErbV1Siz5QE8qKT1WIwybSWlqjw== dependencies: babel-helper-optimise-call-expression "^6.24.1" babel-messages "^6.23.0" @@ -822,27 +745,27 @@ babel-helper-replace-supers@^6.24.1: babel-helper-to-multiple-sequence-expressions@^0.5.0: version "0.5.0" - resolved "https://registry.yarnpkg.com/babel-helper-to-multiple-sequence-expressions/-/babel-helper-to-multiple-sequence-expressions-0.5.0.tgz#a3f924e3561882d42fcf48907aa98f7979a4588d" + resolved "https://registry.npmjs.org/babel-helper-to-multiple-sequence-expressions/-/babel-helper-to-multiple-sequence-expressions-0.5.0.tgz" integrity sha512-m2CvfDW4+1qfDdsrtf4dwOslQC3yhbgyBFptncp4wvtdrDHqueW7slsYv4gArie056phvQFhT2nRcGS4bnm6mA== babel-helpers@^6.24.1: version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2" - integrity sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI= + resolved "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz" + integrity sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI= sha512-n7pFrqQm44TCYvrCDb0MqabAF+JUBq+ijBvNMUxpkLjJaAu32faIexewMumrH5KLLJ1HDyT0PTEqRyAe/GwwuQ== dependencies: babel-runtime "^6.22.0" babel-template "^6.24.1" babel-messages@^6.23.0, babel-messages@^6.8.0: version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" - integrity sha1-8830cDhYA1sqKVHG7F7fbGLyYw4= + resolved "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz" + integrity sha1-8830cDhYA1sqKVHG7F7fbGLyYw4= sha512-Bl3ZiA+LjqaMtNYopA9TYE9HP1tQ+E5dLxE0XrAzcIJeK2UqF0/EaqXwBn9esd4UmTfEab+P+UYQ1GnioFIb/w== dependencies: babel-runtime "^6.22.0" babel-minify@0.5.1: version "0.5.1" - resolved "https://registry.yarnpkg.com/babel-minify/-/babel-minify-0.5.1.tgz#dcb8bfe22fcf4bb911dac97ba2987464ee59eeed" + resolved "https://registry.npmjs.org/babel-minify/-/babel-minify-0.5.1.tgz" integrity sha512-ftEYu5OCDXEqaX/eINIaekPgkCaVPJNwFHzXKKARnRLggK8g4a9dEOflLKDgRNYOwhcLVoicUchZG6FYyOpqSA== dependencies: "@babel/core" "^7.1.0" @@ -855,33 +778,33 @@ babel-minify@0.5.1: babel-plugin-check-es2015-constants@^6.22.0: version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz#35157b101426fd2ffd3da3f75c7d1e91835bbf8a" - integrity sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o= + resolved "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz" + integrity sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o= sha512-B1M5KBP29248dViEo1owyY32lk1ZSH2DaNNrXLGt8lyjjHm7pBqAdQ7VKUPR6EEDO323+OvT3MQXbCin8ooWdA== dependencies: babel-runtime "^6.22.0" babel-plugin-external-helpers@6.22.0: version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-external-helpers/-/babel-plugin-external-helpers-6.22.0.tgz#2285f48b02bd5dede85175caf8c62e86adccefa1" - integrity sha1-IoX0iwK9Xe3oUXXK+MYuhq3M76E= + resolved "https://registry.npmjs.org/babel-plugin-external-helpers/-/babel-plugin-external-helpers-6.22.0.tgz" + integrity sha1-IoX0iwK9Xe3oUXXK+MYuhq3M76E= sha512-TdAMiM6MzLokhk3yCA0KCctmivVZ/mmCwbp7YPmRGkqh2KkcNuxE3R0jxuYU+4xmvfMZx4p4uo8d1cT9t5BLxA== dependencies: babel-runtime "^6.22.0" babel-plugin-minify-builtins@^0.5.0: version "0.5.0" - resolved "https://registry.yarnpkg.com/babel-plugin-minify-builtins/-/babel-plugin-minify-builtins-0.5.0.tgz#31eb82ed1a0d0efdc31312f93b6e4741ce82c36b" + resolved "https://registry.npmjs.org/babel-plugin-minify-builtins/-/babel-plugin-minify-builtins-0.5.0.tgz" integrity sha512-wpqbN7Ov5hsNwGdzuzvFcjgRlzbIeVv1gMIlICbPj0xkexnfoIDe7q+AZHMkQmAE/F9R5jkrB6TLfTegImlXag== babel-plugin-minify-constant-folding@^0.5.0: version "0.5.0" - resolved "https://registry.yarnpkg.com/babel-plugin-minify-constant-folding/-/babel-plugin-minify-constant-folding-0.5.0.tgz#f84bc8dbf6a561e5e350ff95ae216b0ad5515b6e" + resolved "https://registry.npmjs.org/babel-plugin-minify-constant-folding/-/babel-plugin-minify-constant-folding-0.5.0.tgz" integrity sha512-Vj97CTn/lE9hR1D+jKUeHfNy+m1baNiJ1wJvoGyOBUx7F7kJqDZxr9nCHjO/Ad+irbR3HzR6jABpSSA29QsrXQ== dependencies: babel-helper-evaluate-path "^0.5.0" babel-plugin-minify-dead-code-elimination@^0.5.1: version "0.5.1" - resolved "https://registry.yarnpkg.com/babel-plugin-minify-dead-code-elimination/-/babel-plugin-minify-dead-code-elimination-0.5.1.tgz#1a0c68e44be30de4976ca69ffc535e08be13683f" + resolved "https://registry.npmjs.org/babel-plugin-minify-dead-code-elimination/-/babel-plugin-minify-dead-code-elimination-0.5.1.tgz" integrity sha512-x8OJOZIrRmQBcSqxBcLbMIK8uPmTvNWPXH2bh5MDCW1latEqYiRMuUkPImKcfpo59pTUB2FT7HfcgtG8ZlR5Qg== dependencies: babel-helper-evaluate-path "^0.5.0" @@ -891,14 +814,14 @@ babel-plugin-minify-dead-code-elimination@^0.5.1: babel-plugin-minify-flip-comparisons@^0.4.3: version "0.4.3" - resolved "https://registry.yarnpkg.com/babel-plugin-minify-flip-comparisons/-/babel-plugin-minify-flip-comparisons-0.4.3.tgz#00ca870cb8f13b45c038b3c1ebc0f227293c965a" - integrity sha1-AMqHDLjxO0XAOLPB68DyJyk8llo= + resolved "https://registry.npmjs.org/babel-plugin-minify-flip-comparisons/-/babel-plugin-minify-flip-comparisons-0.4.3.tgz" + integrity sha1-AMqHDLjxO0XAOLPB68DyJyk8llo= sha512-8hNwgLVeJzpeLVOVArag2DfTkbKodzOHU7+gAZ8mGBFGPQHK6uXVpg3jh5I/F6gfi5Q5usWU2OKcstn1YbAV7A== dependencies: babel-helper-is-void-0 "^0.4.3" babel-plugin-minify-guarded-expressions@^0.4.4: version "0.4.4" - resolved "https://registry.yarnpkg.com/babel-plugin-minify-guarded-expressions/-/babel-plugin-minify-guarded-expressions-0.4.4.tgz#818960f64cc08aee9d6c75bec6da974c4d621135" + resolved "https://registry.npmjs.org/babel-plugin-minify-guarded-expressions/-/babel-plugin-minify-guarded-expressions-0.4.4.tgz" integrity sha512-RMv0tM72YuPPfLT9QLr3ix9nwUIq+sHT6z8Iu3sLbqldzC1Dls8DPCywzUIzkTx9Zh1hWX4q/m9BPoPed9GOfA== dependencies: babel-helper-evaluate-path "^0.5.0" @@ -906,29 +829,29 @@ babel-plugin-minify-guarded-expressions@^0.4.4: babel-plugin-minify-infinity@^0.4.3: version "0.4.3" - resolved "https://registry.yarnpkg.com/babel-plugin-minify-infinity/-/babel-plugin-minify-infinity-0.4.3.tgz#dfb876a1b08a06576384ef3f92e653ba607b39ca" - integrity sha1-37h2obCKBldjhO8/kuZTumB7Oco= + resolved "https://registry.npmjs.org/babel-plugin-minify-infinity/-/babel-plugin-minify-infinity-0.4.3.tgz" + integrity sha1-37h2obCKBldjhO8/kuZTumB7Oco= sha512-X0ictxCk8y+NvIf+bZ1HJPbVZKMlPku3lgYxPmIp62Dp8wdtbMLSekczty3MzvUOlrk5xzWYpBpQprXUjDRyMA== babel-plugin-minify-mangle-names@^0.5.0: version "0.5.0" - resolved "https://registry.yarnpkg.com/babel-plugin-minify-mangle-names/-/babel-plugin-minify-mangle-names-0.5.0.tgz#bcddb507c91d2c99e138bd6b17a19c3c271e3fd3" + resolved "https://registry.npmjs.org/babel-plugin-minify-mangle-names/-/babel-plugin-minify-mangle-names-0.5.0.tgz" integrity sha512-3jdNv6hCAw6fsX1p2wBGPfWuK69sfOjfd3zjUXkbq8McbohWy23tpXfy5RnToYWggvqzuMOwlId1PhyHOfgnGw== dependencies: babel-helper-mark-eval-scopes "^0.4.3" babel-plugin-minify-numeric-literals@^0.4.3: version "0.4.3" - resolved "https://registry.yarnpkg.com/babel-plugin-minify-numeric-literals/-/babel-plugin-minify-numeric-literals-0.4.3.tgz#8e4fd561c79f7801286ff60e8c5fd9deee93c0bc" - integrity sha1-jk/VYcefeAEob/YOjF/Z3u6TwLw= + resolved "https://registry.npmjs.org/babel-plugin-minify-numeric-literals/-/babel-plugin-minify-numeric-literals-0.4.3.tgz" + integrity sha1-jk/VYcefeAEob/YOjF/Z3u6TwLw= sha512-5D54hvs9YVuCknfWywq0eaYDt7qYxlNwCqW9Ipm/kYeS9gYhJd0Rr/Pm2WhHKJ8DC6aIlDdqSBODSthabLSX3A== babel-plugin-minify-replace@^0.5.0: version "0.5.0" - resolved "https://registry.yarnpkg.com/babel-plugin-minify-replace/-/babel-plugin-minify-replace-0.5.0.tgz#d3e2c9946c9096c070efc96761ce288ec5c3f71c" + resolved "https://registry.npmjs.org/babel-plugin-minify-replace/-/babel-plugin-minify-replace-0.5.0.tgz" integrity sha512-aXZiaqWDNUbyNNNpWs/8NyST+oU7QTpK7J9zFEFSA0eOmtUNMU3fczlTTTlnCxHmq/jYNFEmkkSG3DDBtW3Y4Q== babel-plugin-minify-simplify@^0.5.1: version "0.5.1" - resolved "https://registry.yarnpkg.com/babel-plugin-minify-simplify/-/babel-plugin-minify-simplify-0.5.1.tgz#f21613c8b95af3450a2ca71502fdbd91793c8d6a" + resolved "https://registry.npmjs.org/babel-plugin-minify-simplify/-/babel-plugin-minify-simplify-0.5.1.tgz" integrity sha512-OSYDSnoCxP2cYDMk9gxNAed6uJDiDz65zgL6h8d3tm8qXIagWGMLWhqysT6DY3Vs7Fgq7YUDcjOomhVUb+xX6A== dependencies: babel-helper-evaluate-path "^0.5.0" @@ -938,30 +861,30 @@ babel-plugin-minify-simplify@^0.5.1: babel-plugin-minify-type-constructors@^0.4.3: version "0.4.3" - resolved "https://registry.yarnpkg.com/babel-plugin-minify-type-constructors/-/babel-plugin-minify-type-constructors-0.4.3.tgz#1bc6f15b87f7ab1085d42b330b717657a2156500" - integrity sha1-G8bxW4f3qxCF1CszC3F2V6IVZQA= + resolved "https://registry.npmjs.org/babel-plugin-minify-type-constructors/-/babel-plugin-minify-type-constructors-0.4.3.tgz" + integrity sha1-G8bxW4f3qxCF1CszC3F2V6IVZQA= sha512-4ADB0irJ/6BeXWHubjCJmrPbzhxDgjphBMjIjxCc25n4NGJ00NsYqwYt+F/OvE9RXx8KaSW7cJvp+iZX436tnQ== dependencies: babel-helper-is-void-0 "^0.4.3" babel-plugin-syntax-async-functions@^6.8.0: version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95" - integrity sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU= + resolved "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz" + integrity sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU= sha512-4Zp4unmHgw30A1eWI5EpACji2qMocisdXhAftfhXoSV9j0Tvj6nRFE3tOmRY912E0FMRm/L5xWE7MGVT2FoLnw== babel-plugin-syntax-exponentiation-operator@^6.8.0: version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de" - integrity sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4= + resolved "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz" + integrity sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4= sha512-Z/flU+T9ta0aIEKl1tGEmN/pZiI1uXmCiGFRegKacQfEJzp7iNsKloZmyJlQr+75FCJtiFfGIK03SiCvCt9cPQ== babel-plugin-syntax-trailing-function-commas@^6.22.0: version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3" - integrity sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM= + resolved "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz" + integrity sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM= sha512-Gx9CH3Q/3GKbhs07Bszw5fPTlU+ygrOGfAhEt7W2JICwufpC4SuO0mG0+4NykPBSYPMJhqvVlDBU17qB1D+hMQ== babel-plugin-transform-async-to-generator@^6.22.0: version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761" - integrity sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E= + resolved "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz" + integrity sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E= sha512-7BgYJujNCg0Ti3x0c/DL3tStvnKS6ktIYOmo9wginv/dfZOrbSZ+qG4IRRHMBOzZ5Awb1skTiAsQXg/+IWkZYw== dependencies: babel-helper-remap-async-to-generator "^6.24.1" babel-plugin-syntax-async-functions "^6.8.0" @@ -969,22 +892,22 @@ babel-plugin-transform-async-to-generator@^6.22.0: babel-plugin-transform-es2015-arrow-functions@^6.22.0: version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz#452692cb711d5f79dc7f85e440ce41b9f244d221" - integrity sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE= + resolved "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz" + integrity sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE= sha512-PCqwwzODXW7JMrzu+yZIaYbPQSKjDTAsNNlK2l5Gg9g4rz2VzLnZsStvp/3c46GfXpwkyufb3NCyG9+50FF1Vg== dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-block-scoped-functions@^6.22.0: version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz#bbc51b49f964d70cb8d8e0b94e820246ce3a6141" - integrity sha1-u8UbSflk1wy42OC5ToICRs46YUE= + resolved "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz" + integrity sha1-u8UbSflk1wy42OC5ToICRs46YUE= sha512-2+ujAT2UMBzYFm7tidUsYh+ZoIutxJ3pN9IYrF1/H6dCKtECfhmB8UkHVpyxDwkj0CYbQG35ykoz925TUnBc3A== dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-block-scoping@^6.23.0: version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz#d70f5299c1308d05c12f463813b0a09e73b1895f" - integrity sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8= + resolved "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz" + integrity sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8= sha512-YiN6sFAQ5lML8JjCmr7uerS5Yc/EMbgg9G8ZNmk2E3nYX4ckHR01wrkeeMijEf5WHNK5TW0Sl0Uu3pv3EdOJWw== dependencies: babel-runtime "^6.26.0" babel-template "^6.26.0" @@ -994,8 +917,8 @@ babel-plugin-transform-es2015-block-scoping@^6.23.0: babel-plugin-transform-es2015-classes@^6.23.0: version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz#5a4c58a50c9c9461e564b4b2a3bfabc97a2584db" - integrity sha1-WkxYpQyclGHlZLSyo7+ryXolhNs= + resolved "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz" + integrity sha1-WkxYpQyclGHlZLSyo7+ryXolhNs= sha512-5Dy7ZbRinGrNtmWpquZKZ3EGY8sDgIVB4CU8Om8q8tnMLrD/m94cKglVcHps0BCTdZ0TJeeAWOq2TK9MIY6cag== dependencies: babel-helper-define-map "^6.24.1" babel-helper-function-name "^6.24.1" @@ -1009,38 +932,38 @@ babel-plugin-transform-es2015-classes@^6.23.0: babel-plugin-transform-es2015-computed-properties@^6.22.0: version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.22.0.tgz#7c383e9629bba4820c11b0425bdd6290f7f057e7" - integrity sha1-fDg+lim7pIIMEbBCW91ikPfwV+c= + resolved "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.22.0.tgz" + integrity sha1-fDg+lim7pIIMEbBCW91ikPfwV+c= sha512-PPSuiGSob2Hvjmd3k87ycqwztGeYKJrEYT9OPe1Nnpsjf0gpABCE6B7y34FGXU3yUJIMx8B3hGnHGrXl3kGXjQ== dependencies: babel-runtime "^6.22.0" babel-template "^6.22.0" babel-plugin-transform-es2015-destructuring@^6.23.0: version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz#997bb1f1ab967f682d2b0876fe358d60e765c56d" - integrity sha1-mXux8auWf2gtKwh2/jWNYOdlxW0= + resolved "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz" + integrity sha1-mXux8auWf2gtKwh2/jWNYOdlxW0= sha512-aNv/GDAW0j/f4Uy1OEPZn1mqD+Nfy9viFGBfQ5bZyT35YqOiqx7/tXdyfZkJ1sC21NyEsBdfDY6PYmLHF4r5iA== dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-duplicate-keys@^6.22.0: version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.22.0.tgz#672397031c21610d72dd2bbb0ba9fb6277e1c36b" - integrity sha1-ZyOXAxwhYQ1y3Su7C6n7Ynfhw2s= + resolved "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.22.0.tgz" + integrity sha1-ZyOXAxwhYQ1y3Su7C6n7Ynfhw2s= sha512-MxAQX9WMn338W6JwztQA8kdy2T3gFCl457O8jblzVuP74SPmcgn56ThkpRBdNvlRN48KDoZ1kJGxkxe5bgxSwQ== dependencies: babel-runtime "^6.22.0" babel-types "^6.22.0" babel-plugin-transform-es2015-for-of@^6.23.0: version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz#f47c95b2b613df1d3ecc2fdb7573623c75248691" - integrity sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE= + resolved "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz" + integrity sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE= sha512-DLuRwoygCoXx+YfxHLkVx5/NpeSbVwfoTeBykpJK7JhYWlL/O8hgAK/reforUnZDlxasOrVPPJVI/guE3dCwkw== dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-function-name@^6.22.0: version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.22.0.tgz#f5fcc8b09093f9a23c76ac3d9e392c3ec4b77104" - integrity sha1-9fzIsJCT+aI8dqw9njksPsS3cQQ= + resolved "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.22.0.tgz" + integrity sha1-9fzIsJCT+aI8dqw9njksPsS3cQQ= sha512-QcQzXK+DnimXypK+et1Q7OlVONYS7G2xFhK+/28uTJbNLYXmjetWd3CL6whPe8Zj3VivChoXm+IyKk0+Q0/lyA== dependencies: babel-helper-function-name "^6.22.0" babel-runtime "^6.22.0" @@ -1048,15 +971,15 @@ babel-plugin-transform-es2015-function-name@^6.22.0: babel-plugin-transform-es2015-literals@^6.22.0: version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz#4f54a02d6cd66cf915280019a31d31925377ca2e" - integrity sha1-T1SgLWzWbPkVKAAZox0xklN3yi4= + resolved "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz" + integrity sha1-T1SgLWzWbPkVKAAZox0xklN3yi4= sha512-tjFl0cwMPpDYyoqYA9li1/7mGFit39XiNX5DKC/uCNjBctMxyL1/PT/l4rSlbvBG1pOKI88STRdUsWXB3/Q9hQ== dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-modules-amd@^6.22.0, babel-plugin-transform-es2015-modules-amd@^6.24.1: version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz#3b3e54017239842d6d19c3011c4bd2f00a00d154" - integrity sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ= + resolved "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz" + integrity sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ= sha512-LnIIdGWIKdw7zwckqx+eGjcS8/cl8D74A3BpJbGjKTFFNJSMrjN4bIh22HY1AlkUbeLG6X6OZj56BDvWD+OeFA== dependencies: babel-plugin-transform-es2015-modules-commonjs "^6.24.1" babel-runtime "^6.22.0" @@ -1064,8 +987,8 @@ babel-plugin-transform-es2015-modules-amd@^6.22.0, babel-plugin-transform-es2015 babel-plugin-transform-es2015-modules-commonjs@^6.23.0, babel-plugin-transform-es2015-modules-commonjs@^6.24.1: version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz#0d8394029b7dc6abe1a97ef181e00758dd2e5d8a" - integrity sha1-DYOUApt9xqvhqX7xgeAHWN0uXYo= + resolved "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz" + integrity sha1-DYOUApt9xqvhqX7xgeAHWN0uXYo= sha512-t33zrLpy4zDVZ/MnEk5GK4j4VAbEeLgKXM89RZPqSuRpuoZCqdxN8OgePBHKR7eBM9IyW5oCLL0xbw6H7I/qaw== dependencies: babel-plugin-transform-strict-mode "^6.24.1" babel-runtime "^6.26.0" @@ -1074,8 +997,8 @@ babel-plugin-transform-es2015-modules-commonjs@^6.23.0, babel-plugin-transform-e babel-plugin-transform-es2015-modules-systemjs@^6.23.0: version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz#ff89a142b9119a906195f5f106ecf305d9407d23" - integrity sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM= + resolved "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz" + integrity sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM= sha512-ONFIPsq8y4bls5PPsAWYXH/21Hqv64TBxdje0FvU3MhIV6QM2j5YS7KvAzg/nTIVLot2D2fmFQrFWCbgHlFEjg== dependencies: babel-helper-hoist-variables "^6.24.1" babel-runtime "^6.22.0" @@ -1083,8 +1006,8 @@ babel-plugin-transform-es2015-modules-systemjs@^6.23.0: babel-plugin-transform-es2015-modules-umd@^6.23.0: version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz#ac997e6285cd18ed6176adb607d602344ad38468" - integrity sha1-rJl+YoXNGO1hdq22B9YCNErThGg= + resolved "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz" + integrity sha1-rJl+YoXNGO1hdq22B9YCNErThGg= sha512-LpVbiT9CLsuAIp3IG0tfbVo81QIhn6pE8xBJ7XSeCtFlMltuar5VuBV6y6Q45tpui9QWcy5i0vLQfCfrnF7Kiw== dependencies: babel-plugin-transform-es2015-modules-amd "^6.24.1" babel-runtime "^6.22.0" @@ -1092,16 +1015,16 @@ babel-plugin-transform-es2015-modules-umd@^6.23.0: babel-plugin-transform-es2015-object-super@^6.22.0: version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.22.0.tgz#daa60e114a042ea769dd53fe528fc82311eb98fc" - integrity sha1-2qYOEUoELqdp3VP+Uo/IIxHrmPw= + resolved "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.22.0.tgz" + integrity sha1-2qYOEUoELqdp3VP+Uo/IIxHrmPw= sha512-4mWlLSwbGPUpjHKZmh/jZdn1dIVrwyuAAXi0QLaivH5AzNX6mP09kT4RLDCfXNuTT5XcudtWgY0hbe3pfO8Tkw== dependencies: babel-helper-replace-supers "^6.22.0" babel-runtime "^6.22.0" babel-plugin-transform-es2015-parameters@^6.23.0: version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz#57ac351ab49caf14a97cd13b09f66fdf0a625f2b" - integrity sha1-V6w1GrScrxSpfNE7CfZv3wpiXys= + resolved "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz" + integrity sha1-V6w1GrScrxSpfNE7CfZv3wpiXys= sha512-8HxlW+BB5HqniD+nLkQ4xSAVq3bR/pcYW9IigY+2y0dI+Y7INFeTbfAQr+63T3E4UDsZGjyb+l9txUnABWxlOQ== dependencies: babel-helper-call-delegate "^6.24.1" babel-helper-get-function-arity "^6.24.1" @@ -1112,23 +1035,23 @@ babel-plugin-transform-es2015-parameters@^6.23.0: babel-plugin-transform-es2015-shorthand-properties@^6.22.0: version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.22.0.tgz#8ba776e0affaa60bff21e921403b8a652a2ff723" - integrity sha1-i6d24K/6pgv/IekhQDuKZSov9yM= + resolved "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.22.0.tgz" + integrity sha1-i6d24K/6pgv/IekhQDuKZSov9yM= sha512-uanPrZ0kdKVRdSy1my61ZbiTw15JpTmDfg2qgKIrUsMuTOVQ6DqTnxSeJRr5wxpxP9bN8XglW5rsmgrZYUt30w== dependencies: babel-runtime "^6.22.0" babel-types "^6.22.0" babel-plugin-transform-es2015-spread@^6.22.0: version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz#d6d68a99f89aedc4536c81a542e8dd9f1746f8d1" - integrity sha1-1taKmfia7cRTbIGlQujdnxdG+NE= + resolved "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz" + integrity sha1-1taKmfia7cRTbIGlQujdnxdG+NE= sha512-3Ghhi26r4l3d0Js933E5+IhHwk0A1yiutj9gwvzmFbVV0sPMYk2lekhOufHBswX7NCoSeF4Xrl3sCIuSIa+zOg== dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-sticky-regex@^6.22.0: version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.22.0.tgz#ab316829e866ee3f4b9eb96939757d19a5bc4593" - integrity sha1-qzFoKehm7j9LnrlpOXV9GaW8RZM= + resolved "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.22.0.tgz" + integrity sha1-qzFoKehm7j9LnrlpOXV9GaW8RZM= sha512-Q+1qk0OpR9QBWr5ahELzVBshBthuN4fcldxMKiPV4P7itDo1Omz8KP9BjM9hXIqaO31NYOh6SZk0vD/nNS0XIA== dependencies: babel-helper-regex "^6.22.0" babel-runtime "^6.22.0" @@ -1136,22 +1059,22 @@ babel-plugin-transform-es2015-sticky-regex@^6.22.0: babel-plugin-transform-es2015-template-literals@^6.22.0: version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz#a84b3450f7e9f8f1f6839d6d687da84bb1236d8d" - integrity sha1-qEs0UPfp+PH2g51taH2oS7EjbY0= + resolved "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz" + integrity sha1-qEs0UPfp+PH2g51taH2oS7EjbY0= sha512-x8b9W0ngnKzDMHimVtTfn5ryimars1ByTqsfBDwAqLibmuuQY6pgBQi5z1ErIsUOWBdw1bW9FSz5RZUojM4apg== dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-typeof-symbol@^6.23.0: version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz#dec09f1cddff94b52ac73d505c84df59dcceb372" - integrity sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I= + resolved "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz" + integrity sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I= sha512-fz6J2Sf4gYN6gWgRZaoFXmq93X+Li/8vf+fb0sGDVtdeWvxC9y5/bTD7bvfWMEq6zetGEHpWjtzRGSugt5kNqw== dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-unicode-regex@^6.22.0: version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.22.0.tgz#8d9cc27e7ee1decfe65454fb986452a04a613d20" - integrity sha1-jZzCfn7h3s/mVFT7mGRSoEphPSA= + resolved "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.22.0.tgz" + integrity sha1-jZzCfn7h3s/mVFT7mGRSoEphPSA= sha512-Xoacw/AXA2w7KltZUOm0x5cKVR+9BHZrxLklIeCWEjfmJKtUtCE4k5o45C9lXxbLlwfNI5eYNvJvOVCXNhKdUA== dependencies: babel-helper-regex "^6.22.0" babel-runtime "^6.22.0" @@ -1159,8 +1082,8 @@ babel-plugin-transform-es2015-unicode-regex@^6.22.0: babel-plugin-transform-exponentiation-operator@^6.22.0: version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e" - integrity sha1-KrDJx/MJj6SJB3cruBP+QejeOg4= + resolved "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz" + integrity sha1-KrDJx/MJj6SJB3cruBP+QejeOg4= sha512-LzXDmbMkklvNhprr20//RStKVcT8Cu+SQtX18eMHLhjHf2yFzwtQ0S2f0jQ+89rokoNdmwoSqYzAhq86FxlLSQ== dependencies: babel-helper-builder-binary-assignment-operator-visitor "^6.24.1" babel-plugin-syntax-exponentiation-operator "^6.8.0" @@ -1168,81 +1091,81 @@ babel-plugin-transform-exponentiation-operator@^6.22.0: babel-plugin-transform-inline-consecutive-adds@^0.4.3: version "0.4.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-inline-consecutive-adds/-/babel-plugin-transform-inline-consecutive-adds-0.4.3.tgz#323d47a3ea63a83a7ac3c811ae8e6941faf2b0d1" - integrity sha1-Mj1Ho+pjqDp6w8gRro5pQfrysNE= + resolved "https://registry.npmjs.org/babel-plugin-transform-inline-consecutive-adds/-/babel-plugin-transform-inline-consecutive-adds-0.4.3.tgz" + integrity sha1-Mj1Ho+pjqDp6w8gRro5pQfrysNE= sha512-8D104wbzzI5RlxeVPYeQb9QsUyepiH1rAO5hpPpQ6NPRgQLpIVwkS/Nbx944pm4K8Z+rx7CgjPsFACz/VCBN0Q== babel-plugin-transform-member-expression-literals@^6.9.4: version "6.9.4" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-member-expression-literals/-/babel-plugin-transform-member-expression-literals-6.9.4.tgz#37039c9a0c3313a39495faac2ff3a6b5b9d038bf" - integrity sha1-NwOcmgwzE6OUlfqsL/OmtbnQOL8= + resolved "https://registry.npmjs.org/babel-plugin-transform-member-expression-literals/-/babel-plugin-transform-member-expression-literals-6.9.4.tgz" + integrity sha1-NwOcmgwzE6OUlfqsL/OmtbnQOL8= sha512-Xq9/Rarpj+bjOZSl1nBbZYETsNEDDJSrb6Plb1sS3/36FukWFLLRysgecva5KZECjUJTrJoQqjJgtWToaflk5Q== babel-plugin-transform-merge-sibling-variables@^6.9.4: version "6.9.4" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-merge-sibling-variables/-/babel-plugin-transform-merge-sibling-variables-6.9.4.tgz#85b422fc3377b449c9d1cde44087203532401dae" - integrity sha1-hbQi/DN3tEnJ0c3kQIcgNTJAHa4= + resolved "https://registry.npmjs.org/babel-plugin-transform-merge-sibling-variables/-/babel-plugin-transform-merge-sibling-variables-6.9.4.tgz" + integrity sha1-hbQi/DN3tEnJ0c3kQIcgNTJAHa4= sha512-FDI9c4jqyYvl0pF8J0pE6xl5Ot235glDIc5mRfTH2nQ1qH/aNW45UZcAwVykD4OICRrgir6+7eQV7PPaLqsXsA== babel-plugin-transform-minify-booleans@^6.9.4: version "6.9.4" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-minify-booleans/-/babel-plugin-transform-minify-booleans-6.9.4.tgz#acbb3e56a3555dd23928e4b582d285162dd2b198" - integrity sha1-rLs+VqNVXdI5KOS1gtKFFi3SsZg= + resolved "https://registry.npmjs.org/babel-plugin-transform-minify-booleans/-/babel-plugin-transform-minify-booleans-6.9.4.tgz" + integrity sha1-rLs+VqNVXdI5KOS1gtKFFi3SsZg= sha512-9pW9ePng6DZpzGPalcrULuhSCcauGAbn8AeU3bE34HcDkGm8Ldt0ysjGkyb64f0K3T5ilV4mriayOVv5fg0ASA== babel-plugin-transform-property-literals@^6.9.4: version "6.9.4" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-property-literals/-/babel-plugin-transform-property-literals-6.9.4.tgz#98c1d21e255736573f93ece54459f6ce24985d39" - integrity sha1-mMHSHiVXNlc/k+zlRFn2ziSYXTk= + resolved "https://registry.npmjs.org/babel-plugin-transform-property-literals/-/babel-plugin-transform-property-literals-6.9.4.tgz" + integrity sha1-mMHSHiVXNlc/k+zlRFn2ziSYXTk= sha512-Pf8JHTjTPxecqVyL6KSwD/hxGpoTZjiEgV7nCx0KFQsJYM0nuuoCajbg09KRmZWeZbJ5NGTySABYv8b/hY1eEA== dependencies: esutils "^2.0.2" babel-plugin-transform-regenerator@^6.22.0: version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.22.0.tgz#65740593a319c44522157538d690b84094617ea6" - integrity sha1-ZXQFk6MZxEUiFXU41pC4QJRhfqY= + resolved "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.22.0.tgz" + integrity sha1-ZXQFk6MZxEUiFXU41pC4QJRhfqY= sha512-JmcfBGv2sos9ifvcy9eb7WWhlrUuXAJMZx/CiMRj8Ckxak1bjhHJgXNSic/SaJGQPEdAwiP6zww76jZogu3Fnw== dependencies: regenerator-transform "0.9.8" babel-plugin-transform-regexp-constructors@^0.4.3: version "0.4.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-regexp-constructors/-/babel-plugin-transform-regexp-constructors-0.4.3.tgz#58b7775b63afcf33328fae9a5f88fbd4fb0b4965" - integrity sha1-WLd3W2OvzzMyj66aX4j71PsLSWU= + resolved "https://registry.npmjs.org/babel-plugin-transform-regexp-constructors/-/babel-plugin-transform-regexp-constructors-0.4.3.tgz" + integrity sha1-WLd3W2OvzzMyj66aX4j71PsLSWU= sha512-JjymDyEyRNhAoNFp09y/xGwYVYzT2nWTGrBrWaL6eCg2m+B24qH2jR0AA8V8GzKJTgC8NW6joJmc6nabvWBD/g== babel-plugin-transform-remove-console@^6.9.4: version "6.9.4" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-remove-console/-/babel-plugin-transform-remove-console-6.9.4.tgz#b980360c067384e24b357a588d807d3c83527780" - integrity sha1-uYA2DAZzhOJLNXpYjYB9PINSd4A= + resolved "https://registry.npmjs.org/babel-plugin-transform-remove-console/-/babel-plugin-transform-remove-console-6.9.4.tgz" + integrity sha1-uYA2DAZzhOJLNXpYjYB9PINSd4A= sha512-88blrUrMX3SPiGkT1GnvVY8E/7A+k6oj3MNvUtTIxJflFzXTw1bHkuJ/y039ouhFMp2prRn5cQGzokViYi1dsg== babel-plugin-transform-remove-debugger@^6.9.4: version "6.9.4" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-remove-debugger/-/babel-plugin-transform-remove-debugger-6.9.4.tgz#42b727631c97978e1eb2d199a7aec84a18339ef2" - integrity sha1-QrcnYxyXl44estGZp67IShgznvI= + resolved "https://registry.npmjs.org/babel-plugin-transform-remove-debugger/-/babel-plugin-transform-remove-debugger-6.9.4.tgz" + integrity sha1-QrcnYxyXl44estGZp67IShgznvI= sha512-Kd+eTBYlXfwoFzisburVwrngsrz4xh9I0ppoJnU/qlLysxVBRgI4Pj+dk3X8F5tDiehp3hhP8oarRMT9v2Z3lw== babel-plugin-transform-remove-undefined@^0.5.0: version "0.5.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-remove-undefined/-/babel-plugin-transform-remove-undefined-0.5.0.tgz#80208b31225766c630c97fa2d288952056ea22dd" + resolved "https://registry.npmjs.org/babel-plugin-transform-remove-undefined/-/babel-plugin-transform-remove-undefined-0.5.0.tgz" integrity sha512-+M7fJYFaEE/M9CXa0/IRkDbiV3wRELzA1kKQFCJ4ifhrzLKn/9VCCgj9OFmYWwBd8IB48YdgPkHYtbYq+4vtHQ== dependencies: babel-helper-evaluate-path "^0.5.0" babel-plugin-transform-simplify-comparison-operators@^6.9.4: version "6.9.4" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-simplify-comparison-operators/-/babel-plugin-transform-simplify-comparison-operators-6.9.4.tgz#f62afe096cab0e1f68a2d753fdf283888471ceb9" - integrity sha1-9ir+CWyrDh9ootdT/fKDiIRxzrk= + resolved "https://registry.npmjs.org/babel-plugin-transform-simplify-comparison-operators/-/babel-plugin-transform-simplify-comparison-operators-6.9.4.tgz" + integrity sha1-9ir+CWyrDh9ootdT/fKDiIRxzrk= sha512-GLInxhGAQWJ9YIdjwF6dAFlmh4U+kN8pL6Big7nkDzHoZcaDQOtBm28atEhQJq6m9GpAovbiGEShKqXv4BSp0A== babel-plugin-transform-strict-mode@^6.24.1: version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758" - integrity sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g= + resolved "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz" + integrity sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g= sha512-j3KtSpjyLSJxNoCDrhwiJad8kw0gJ9REGj8/CqL0HeRyLnvUNYV9zcqluL6QJSXh3nfsLEmSLvwRfGzrgR96Pw== dependencies: babel-runtime "^6.22.0" babel-types "^6.24.1" babel-plugin-transform-undefined-to-void@^6.9.4: version "6.9.4" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-undefined-to-void/-/babel-plugin-transform-undefined-to-void-6.9.4.tgz#be241ca81404030678b748717322b89d0c8fe280" - integrity sha1-viQcqBQEAwZ4t0hxcyK4nQyP4oA= + resolved "https://registry.npmjs.org/babel-plugin-transform-undefined-to-void/-/babel-plugin-transform-undefined-to-void-6.9.4.tgz" + integrity sha1-viQcqBQEAwZ4t0hxcyK4nQyP4oA= sha512-D2UbwxawEY1xVc9svYAUZQM2xarwSNXue2qDIx6CeV2EuMGaes/0su78zlIDIAgE7BvnMw4UpmSo9fDy+znghg== babel-preset-env@1.6.0: version "1.6.0" - resolved "https://registry.yarnpkg.com/babel-preset-env/-/babel-preset-env-1.6.0.tgz#2de1c782a780a0a5d605d199c957596da43c44e4" + resolved "https://registry.npmjs.org/babel-preset-env/-/babel-preset-env-1.6.0.tgz" integrity sha512-OVgtQRuOZKckrILgMA5rvctvFZPv72Gua9Rt006AiPoB0DJKGN07UmaQA+qRrYgK71MVct8fFhT0EyNWYorVew== dependencies: babel-plugin-check-es2015-constants "^6.22.0" @@ -1278,7 +1201,7 @@ babel-preset-env@1.6.0: babel-preset-minify@^0.5.1: version "0.5.1" - resolved "https://registry.yarnpkg.com/babel-preset-minify/-/babel-preset-minify-0.5.1.tgz#25f5d0bce36ec818be80338d0e594106e21eaa9f" + resolved "https://registry.npmjs.org/babel-preset-minify/-/babel-preset-minify-0.5.1.tgz" integrity sha512-1IajDumYOAPYImkHbrKeiN5AKKP9iOmRoO2IPbIuVp0j2iuCcj0n7P260z38siKMZZ+85d3mJZdtW8IgOv+Tzg== dependencies: babel-plugin-minify-builtins "^0.5.0" @@ -1307,8 +1230,8 @@ babel-preset-minify@^0.5.1: babel-register@^6.26.0: version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071" - integrity sha1-btAhFz4vy0htestFxgCahW9kcHE= + resolved "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz" + integrity sha1-btAhFz4vy0htestFxgCahW9kcHE= sha512-veliHlHX06wjaeY8xNITbveXSiI+ASFnOqvne/LaIJIqOWi2Ogmj91KOugEz/hoh/fwMhXNBJPCv8Xaz5CyM4A== dependencies: babel-core "^6.26.0" babel-runtime "^6.26.0" @@ -1318,48 +1241,18 @@ babel-register@^6.26.0: mkdirp "^0.5.1" source-map-support "^0.4.15" -babel-runtime@^6.18.0, babel-runtime@^6.22.0, babel-runtime@^6.9.0, babel-runtime@^6.9.1: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.23.0.tgz#0a9489f144de70efb3ce4300accdb329e2fc543b" - integrity sha1-CpSJ8UTecO+zzkMArM2zKeL8VDs= - dependencies: - core-js "^2.4.0" - regenerator-runtime "^0.10.0" - -babel-runtime@^6.26.0: +babel-runtime@^6.18.0, babel-runtime@^6.22.0, babel-runtime@^6.26.0, babel-runtime@^6.9.0, babel-runtime@^6.9.1: version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" - integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4= + resolved "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz" + integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4= sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g== dependencies: core-js "^2.4.0" regenerator-runtime "^0.11.0" -babel-template@6.16.0: - version "6.16.0" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.16.0.tgz#e149dd1a9f03a35f817ddbc4d0481988e7ebc8ca" - integrity sha1-4UndGp8Do1+BfdvE0EgZiOfryMo= - dependencies: - babel-runtime "^6.9.0" - babel-traverse "^6.16.0" - babel-types "^6.16.0" - babylon "^6.11.0" - lodash "^4.2.0" - -babel-template@^6.22.0, babel-template@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.23.0.tgz#04d4f270adbb3aa704a8143ae26faa529238e638" - integrity sha1-BNTycK27OqcEqBQ64m+qUpI45jg= - dependencies: - babel-runtime "^6.22.0" - babel-traverse "^6.23.0" - babel-types "^6.23.0" - babylon "^6.11.0" - lodash "^4.2.0" - -babel-template@^6.24.1, babel-template@^6.26.0: +babel-template@^6.22.0, babel-template@^6.24.1, babel-template@^6.26.0: version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" - integrity sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI= + resolved "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz" + integrity sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI= sha512-PCOcLFW7/eazGUKIoqH97sO9A2UYMahsn/yRQ7uOk37iutwjq7ODtcTNF+iFDSHNfkctqsLRjLP7URnOx0T1fg== dependencies: babel-runtime "^6.26.0" babel-traverse "^6.26.0" @@ -1367,25 +1260,21 @@ babel-template@^6.24.1, babel-template@^6.26.0: babylon "^6.18.0" lodash "^4.17.4" -babel-traverse@^6.0.20, babel-traverse@^6.16.0, babel-traverse@^6.23.0: - version "6.23.1" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.23.1.tgz#d3cb59010ecd06a97d81310065f966b699e14f48" - integrity sha1-08tZAQ7NBql9gTEAZflmtpnhT0g= +babel-template@6.16.0: + version "6.16.0" + resolved "https://registry.npmjs.org/babel-template/-/babel-template-6.16.0.tgz" + integrity sha1-4UndGp8Do1+BfdvE0EgZiOfryMo= sha512-ZeJdsT/Eu/2O6WQaKlPJKBHnC/g3CL2WZbfI7Y5vjw14VFSoAoBMCUOko6AwTHOrxS1hJ/FyIH0XAofc941qVQ== dependencies: - babel-code-frame "^6.22.0" - babel-messages "^6.23.0" - babel-runtime "^6.22.0" - babel-types "^6.23.0" - babylon "^6.15.0" - debug "^2.2.0" - globals "^9.0.0" - invariant "^2.2.0" + babel-runtime "^6.9.0" + babel-traverse "^6.16.0" + babel-types "^6.16.0" + babylon "^6.11.0" lodash "^4.2.0" -babel-traverse@^6.24.1, babel-traverse@^6.26.0: +babel-traverse@^6.0.20, babel-traverse@^6.16.0, babel-traverse@^6.24.1, babel-traverse@^6.26.0: version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" - integrity sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4= + resolved "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz" + integrity sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4= sha512-iSxeXx7apsjCHe9c7n8VtRXGzI2Bk1rBSOJgCCjfyXb6v1aCqE1KSEpq/8SXuVN8Ka/Rh1WDTF0MDzkvTA4MIA== dependencies: babel-code-frame "^6.26.0" babel-messages "^6.23.0" @@ -1397,94 +1286,69 @@ babel-traverse@^6.24.1, babel-traverse@^6.26.0: invariant "^2.2.2" lodash "^4.17.4" -babel-types@6.16.0: - version "6.16.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.16.0.tgz#71cca1dbe5337766225c5c193071e8ebcbcffcfe" - integrity sha1-ccyh2+Uzd2YiXFwZMHHo68vP/P4= +babel-types@^6.0.19, babel-types@^6.19.0, babel-types@^6.22.0, babel-types@^6.24.1, babel-types@^6.26.0: + version "6.26.0" + resolved "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz" + integrity sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc= sha512-zhe3V/26rCWsEZK8kZN+HaQj5yQ1CilTObixFzKW1UWjqG7618Twz6YEsCnjfg5gBcJh02DrpCkS9h98ZqDY+g== dependencies: - babel-runtime "^6.9.1" + babel-runtime "^6.26.0" esutils "^2.0.2" - lodash "^4.2.0" - to-fast-properties "^1.0.1" + lodash "^4.17.4" + to-fast-properties "^1.0.3" -babel-types@6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.24.1.tgz#a136879dc15b3606bda0d90c1fc74304c2ff0975" - integrity sha1-oTaHncFbNga9oNkMH8dDBML/CXU= +babel-types@^6.16.0, babel-types@6.16.0: + version "6.16.0" + resolved "https://registry.npmjs.org/babel-types/-/babel-types-6.16.0.tgz" + integrity sha1-ccyh2+Uzd2YiXFwZMHHo68vP/P4= sha512-J9wNG9XNXvzNleyywBbh97qx5XuroVak3qip+MYkOHemGcnQc7RdwcVPMB51fEj8I3E1TgrldA+E4QE/0Qo5Ug== dependencies: - babel-runtime "^6.22.0" + babel-runtime "^6.9.1" esutils "^2.0.2" lodash "^4.2.0" to-fast-properties "^1.0.1" -babel-types@6.25.0: +babel-types@^6.25.0, babel-types@6.25.0: version "6.25.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.25.0.tgz#70afb248d5660e5d18f811d91c8303b54134a18e" - integrity sha1-cK+ySNVmDl0Y+BHZHIMDtUE0oY4= + resolved "https://registry.npmjs.org/babel-types/-/babel-types-6.25.0.tgz" + integrity sha1-cK+ySNVmDl0Y+BHZHIMDtUE0oY4= sha512-7gcO7CcpZLSylbMXMkKAyVRHMSniXYjDvbFEe6C8yhas7sYFrw/6s+zwuXKpUzrdsNNhQ82HXEiE9MdjSY6uEw== dependencies: babel-runtime "^6.22.0" esutils "^2.0.2" lodash "^4.2.0" to-fast-properties "^1.0.1" -babel-types@^6.0.19, babel-types@^6.16.0, babel-types@^6.19.0, babel-types@^6.22.0, babel-types@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.23.0.tgz#bb17179d7538bad38cd0c9e115d340f77e7e9acf" - integrity sha1-uxcXnXU4utOM0MnhFdNA935+ms8= +babel-types@6.24.1: + version "6.24.1" + resolved "https://registry.npmjs.org/babel-types/-/babel-types-6.24.1.tgz" + integrity sha1-oTaHncFbNga9oNkMH8dDBML/CXU= sha512-9EHlZrZV4dsu25zztLA7ZIBRuqe26/4BQ0j2GgWPSg4XczW9h56L1FBx657sVriLfR9fmfFt9IkWCW2gpsuHLw== dependencies: babel-runtime "^6.22.0" esutils "^2.0.2" lodash "^4.2.0" to-fast-properties "^1.0.1" -babel-types@^6.24.1, babel-types@^6.25.0, babel-types@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" - integrity sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc= - dependencies: - babel-runtime "^6.26.0" - esutils "^2.0.2" - lodash "^4.17.4" - to-fast-properties "^1.0.3" - babel@6.23.0: version "6.23.0" - resolved "https://registry.yarnpkg.com/babel/-/babel-6.23.0.tgz#d0d1e7d803e974765beea3232d4e153c0efb90f4" - integrity sha1-0NHn2APpdHZb7qMjLU4VPA77kPQ= - -babylon@6.11.2, babylon@^6.11.0: - version "6.11.2" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.11.2.tgz#3a64361fedee6d9f8276a9abc0c88a9e5237ff7a" - integrity sha1-OmQ2H+3ubZ+CdqmrwMiKnlI3/3o= + resolved "https://registry.npmjs.org/babel/-/babel-6.23.0.tgz" + integrity sha1-0NHn2APpdHZb7qMjLU4VPA77kPQ= sha512-ZDcCaI8Vlct8PJ3DvmyqUz+5X2Ylz3ZuuItBe/74yXosk2dwyVo/aN7MCJ8HJzhnnJ+6yP4o+lDgG9MBe91DLA== -babylon@^6.0.18, babylon@^6.15.0: - version "6.16.1" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.16.1.tgz#30c5a22f481978a9e7f8cdfdf496b11d94b404d3" - integrity sha1-MMWiL0gZeKnn+M399JaxHZS0BNM= - -babylon@^6.18.0: +babylon@^6.0.18, babylon@^6.18.0: version "6.18.0" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" + resolved "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz" integrity sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ== +babylon@^6.11.0, babylon@6.11.2: + version "6.11.2" + resolved "https://registry.npmjs.org/babylon/-/babylon-6.11.2.tgz" + integrity sha1-OmQ2H+3ubZ+CdqmrwMiKnlI3/3o= sha512-QitfThhzM7pts1hRCdQw0KccBchtSrbT0uHH0Vts7QXnmj2CkR+AQPVMfBCa/FFA1yI71aP5wfjYx8cTk7WtFg== + balanced-match@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" - integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= - -base64-js@0.0.8: - version "0.0.8" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-0.0.8.tgz#1101e9544f4a76b1bc3b26d452ca96d7a35e7978" - integrity sha1-EQHpVE9KdrG8OybUUsqW16NeeXg= - -base64-js@^1.0.2: - version "1.2.1" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.1.tgz#a91947da1f4a516ea38e5b4ec0ec3773675e0886" - integrity sha512-dwVUVIXsBZXwTuwnXI9RK8sBmgq09NDHzyR9SAph9eqk76gKK2JSQmZARC2zRC81JC2QTtxD0ARU5qTS25gIGw== + resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz" + integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= sha512-9Y0g0Q8rmSt+H33DfKv7FOc3v+iRI+o1lbzt8jGcIosYW37IIW/2XVYq5NPdmaD5NQ59Nk26Kl/vZbwW9Fr8vg== base@^0.11.1: version "0.11.2" - resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" + resolved "https://registry.npmjs.org/base/-/base-0.11.2.tgz" integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== dependencies: cache-base "^1.0.1" @@ -1495,22 +1359,32 @@ base@^0.11.1: mixin-deep "^1.2.0" pascalcase "^0.1.1" +base64-js@^1.0.2: + version "1.2.1" + resolved "https://registry.npmjs.org/base64-js/-/base64-js-1.2.1.tgz" + integrity sha512-dwVUVIXsBZXwTuwnXI9RK8sBmgq09NDHzyR9SAph9eqk76gKK2JSQmZARC2zRC81JC2QTtxD0ARU5qTS25gIGw== + +base64-js@0.0.8: + version "0.0.8" + resolved "https://registry.npmjs.org/base64-js/-/base64-js-0.0.8.tgz" + integrity sha1-EQHpVE9KdrG8OybUUsqW16NeeXg= sha512-3XSA2cR/h/73EzlXXdU6YNycmYI7+kicTxks4eJg2g39biHR84slg2+des+p7iHYhbRg/udIS4TD53WabcOUkw== + bcrypt-pbkdf@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" - integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= + resolved "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz" + integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w== dependencies: tweetnacl "^0.14.3" beeper@^1.0.0: version "1.1.1" - resolved "https://registry.yarnpkg.com/beeper/-/beeper-1.1.1.tgz#e6d5ea8c5dad001304a70b22638447f69cb2f809" - integrity sha1-5tXqjF2tABMEpwsiY4RH9pyy+Ak= + resolved "https://registry.npmjs.org/beeper/-/beeper-1.1.1.tgz" + integrity sha1-5tXqjF2tABMEpwsiY4RH9pyy+Ak= sha512-3vqtKL1N45I5dV0RdssXZG7X6pCqQrWPNOlBPZPrd+QkE2HEhR57Z04m0KtpbsZH73j+a3F8UD1TQnn+ExTvIA== bin-build@^2.2.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/bin-build/-/bin-build-2.2.0.tgz#11f8dd61f70ffcfa2bdcaa5b46f5e8fedd4221cc" - integrity sha1-EfjdYfcP/Por3KpbRvXo/t1CIcw= + resolved "https://registry.npmjs.org/bin-build/-/bin-build-2.2.0.tgz" + integrity sha1-EfjdYfcP/Por3KpbRvXo/t1CIcw= sha512-m8gaq/BdoePIT5RlHW3KNJZwNkg9YtPn2C89x85/0KYIExoHMm3D/RL/Wxrvum9CI6pbF2KUQa8a/WWFudVmng== dependencies: archive-type "^3.0.1" decompress "^3.0.0" @@ -1522,44 +1396,44 @@ bin-build@^2.2.0: binary-extensions@^1.0.0: version "1.12.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.12.0.tgz#c2d780f53d45bba8317a8902d4ceeaf3a6385b14" + resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.12.0.tgz" integrity sha512-DYWGk01lDcxeS/K9IHPGWfT8PsJmbXRtRd2Sx72Tnb8pcYZQFF1oSDb8hJtS1vhp212q1Rzi5dUf9+nq0o9UIg== bl@^1.0.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.0.tgz#1397e7ec42c5f5dc387470c500e34a9f6be9ea98" - integrity sha1-E5fn7ELF9dw4dHDFAONKn2vp6pg= + resolved "https://registry.npmjs.org/bl/-/bl-1.2.0.tgz" + integrity sha1-E5fn7ELF9dw4dHDFAONKn2vp6pg= sha512-DvHHAkFsYiwt6YJQLY7vzpyLvJzsyZbpsJH4U2+2a6U2+NHN5s+Ms9ui+3q6wrPDIxXpBeLkl6wYR6LMPDxQMQ== dependencies: readable-stream "^2.0.5" bl@~0.8.1: version "0.8.2" - resolved "https://registry.yarnpkg.com/bl/-/bl-0.8.2.tgz#c9b6bca08d1bc2ea00fc8afb4f1a5fd1e1c66e4e" - integrity sha1-yba8oI0bwuoA/Ir7Txpf0eHGbk4= + resolved "https://registry.npmjs.org/bl/-/bl-0.8.2.tgz" + integrity sha1-yba8oI0bwuoA/Ir7Txpf0eHGbk4= sha512-pfqikmByp+lifZCS0p6j6KreV6kNU6Apzpm2nKOk+94cZb/jvle55+JxWiByUQ0Wo/+XnDXEy5MxxKMb6r0VIw== dependencies: readable-stream "~1.0.26" bl@~0.9.0: version "0.9.5" - resolved "https://registry.yarnpkg.com/bl/-/bl-0.9.5.tgz#c06b797af085ea00bc527afc8efcf11de2232054" - integrity sha1-wGt5evCF6gC8Unr8jvzxHeIjIFQ= + resolved "https://registry.npmjs.org/bl/-/bl-0.9.5.tgz" + integrity sha1-wGt5evCF6gC8Unr8jvzxHeIjIFQ= sha512-njlCs8XLBIK7LCChTWfzWuIAxkpmmLXcL7/igCofFT1B039Sz0IPnAmosN5QaO22lU4qr8LcUz2ojUlE6pLkRQ== dependencies: readable-stream "~1.0.26" bluebird@^3.5.4: version "3.5.5" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.5.tgz#a8d0afd73251effbbd5fe384a77d73003c17a71f" + resolved "https://registry.npmjs.org/bluebird/-/bluebird-3.5.5.tgz" integrity sha512-5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w== bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: version "4.11.6" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.6.tgz#53344adb14617a13f6e8dd2ce28905d1c0ba3215" - integrity sha1-UzRK2xRhehP26N0s4okF0cC6MhU= + resolved "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz" + integrity sha1-UzRK2xRhehP26N0s4okF0cC6MhU= sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA== body@^5.1.0: version "5.1.0" - resolved "https://registry.yarnpkg.com/body/-/body-5.1.0.tgz#e4ba0ce410a46936323367609ecb4e6553125069" - integrity sha1-5LoM5BCkaTYyM2dgnstOZVMSUGk= + resolved "https://registry.npmjs.org/body/-/body-5.1.0.tgz" + integrity sha1-5LoM5BCkaTYyM2dgnstOZVMSUGk= sha512-chUsBxGRtuElD6fmw1gHLpvnKdVLK302peeFa9ZqAEk8TyzZ3fygLyUEDDPTJvL9+Bor0dIwn6ePOsRM2y0zQQ== dependencies: continuable-cache "^0.3.1" error "^7.0.0" @@ -1568,38 +1442,30 @@ body@^5.1.0: boom@0.4.x: version "0.4.2" - resolved "https://registry.yarnpkg.com/boom/-/boom-0.4.2.tgz#7a636e9ded4efcefb19cef4947a3c67dfaee911b" - integrity sha1-emNune1O/O+xnO9JR6PGffrukRs= + resolved "https://registry.npmjs.org/boom/-/boom-0.4.2.tgz" + integrity sha1-emNune1O/O+xnO9JR6PGffrukRs= sha512-OvfN8y1oAxxphzkl2SnCS+ztV/uVKTATtgLjWYg/7KwcNyf3rzpHxNQJZCKtsZd4+MteKczhWbSjtEX4bGgU9g== dependencies: hoek "0.9.x" boom@2.x.x: version "2.10.1" - resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f" - integrity sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8= + resolved "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz" + integrity sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8= sha512-KbiZEa9/vofNcVJXGwdWWn25reQ3V3dHBWbS07FTF3/TOehLnm9GEhJV4T6ZvGPkShRpmUqYwnaCrkj0mRnP6Q== dependencies: hoek "2.x.x" -brace-expansion@^1.0.0: - version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" - integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== - dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" - brace-expansion@^1.1.7: version "1.1.8" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292" - integrity sha1-wHshHHyVLsH479Uad+8NHTmQopI= + resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz" + integrity sha1-wHshHHyVLsH479Uad+8NHTmQopI= sha512-Dnfc9ROAPrkkeLIUweEbh7LFT9Mc53tO/bbM044rKjhgAEyIGKvKXg97PM/kRizZIfUHaROZIoeEaWao+Unzfw== dependencies: balanced-match "^1.0.0" concat-map "0.0.1" braces@^1.8.2: version "1.8.5" - resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7" - integrity sha1-uneWLhLf+WnWt2cR6RS3N4V79qc= + resolved "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz" + integrity sha1-uneWLhLf+WnWt2cR6RS3N4V79qc= sha512-xU7bpz2ytJl1bH9cgIurjpg/n8Gohy9GTw81heDYLJQ4RU60dlyJsa+atVF2pI0yMMvKxI9HkKwjePCj5XI1hw== dependencies: expand-range "^1.8.1" preserve "^0.2.0" @@ -1607,7 +1473,7 @@ braces@^1.8.2: braces@^2.3.1: version "2.3.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" + resolved "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz" integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== dependencies: arr-flatten "^1.1.0" @@ -1623,25 +1489,25 @@ braces@^2.3.1: brorand@^1.0.1: version "1.1.0" - resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" - integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= + resolved "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz" + integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== browser-resolve@^1.11.0: version "1.11.2" - resolved "https://registry.yarnpkg.com/browser-resolve/-/browser-resolve-1.11.2.tgz#8ff09b0a2c421718a1051c260b32e48f442938ce" - integrity sha1-j/CbCixCFxihBRwmCzLkj0QpOM4= + resolved "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.2.tgz" + integrity sha1-j/CbCixCFxihBRwmCzLkj0QpOM4= sha512-IBmTH6PPKm10Mnf/ja+YKXZEyH7pyrxBUbbyr0ZEDBGhNOIWVHo41gTWWU4DhYPKt6JIx2YwTsyrULjTsx7/+A== dependencies: resolve "1.1.7" browser-stdout@1.3.0: version "1.3.0" - resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.0.tgz#f351d32969d32fa5d7a5567154263d928ae3bd1f" - integrity sha1-81HTKWnTL6XXpVZxVCY9korjvR8= + resolved "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.0.tgz" + integrity sha1-81HTKWnTL6XXpVZxVCY9korjvR8= sha512-7Rfk377tpSM9TWBEeHs0FlDZGoAIei2V/4MdZJoFMBFAK6BqLpxAIUepGRHGdPFgGsLb02PXovC4qddyHvQqTg== browserify-aes@^1.0.0, browserify-aes@^1.0.4: version "1.0.6" - resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.0.6.tgz#5e7725dbdef1fd5930d4ebab48567ce451c48a0a" - integrity sha1-Xncl297x/Vkw1OurSFZ85FHEigo= + resolved "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.0.6.tgz" + integrity sha1-Xncl297x/Vkw1OurSFZ85FHEigo= sha512-MMvWM6jpfsiuzY2Y+pRJvHRac3x3rHWQisWoz1dJaF9qDFsD8HdVxB7MyZKeLKeEt0fEjrXXZ0mxgTHSoJusug== dependencies: buffer-xor "^1.0.2" cipher-base "^1.0.0" @@ -1651,8 +1517,8 @@ browserify-aes@^1.0.0, browserify-aes@^1.0.4: browserify-cipher@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.0.tgz#9988244874bf5ed4e28da95666dcd66ac8fc363a" - integrity sha1-mYgkSHS/XtTijalWZtzWasj8Njo= + resolved "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.0.tgz" + integrity sha1-mYgkSHS/XtTijalWZtzWasj8Njo= sha512-eR/Xnl6GNhMILoylgYn0CXdb5rbDRp3awDF0KXd/S96E+l49E9EWjSmbJPPM03Gj0nX6Ihydv/3wmtml5hnGrw== dependencies: browserify-aes "^1.0.4" browserify-des "^1.0.0" @@ -1660,8 +1526,8 @@ browserify-cipher@^1.0.0: browserify-des@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.0.tgz#daa277717470922ed2fe18594118a175439721dd" - integrity sha1-2qJ3cXRwki7S/hhZQRihdUOXId0= + resolved "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.0.tgz" + integrity sha1-2qJ3cXRwki7S/hhZQRihdUOXId0= sha512-8ryPIDvl6sFWCs8M8XOLjysP3BmwTUldIuX5yWHu76zazZpMguxHYFJI+kQ99a0lpuPF5jt+qzkFuMtjgo2xBg== dependencies: cipher-base "^1.0.1" des.js "^1.0.0" @@ -1669,8 +1535,8 @@ browserify-des@^1.0.0: browserify-fs@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/browserify-fs/-/browserify-fs-1.0.0.tgz#f075aa8a729d4d1716d066620e386fcc1311a96f" - integrity sha1-8HWqinKdTRcW0GZiDjhvzBMRqW8= + resolved "https://registry.npmjs.org/browserify-fs/-/browserify-fs-1.0.0.tgz" + integrity sha1-8HWqinKdTRcW0GZiDjhvzBMRqW8= sha512-8LqHRPuAEKvyTX34R6tsw4bO2ro6j9DmlYBhiYWHRM26Zv2cBw1fJOU0NeUQ0RkXkPn/PFBjhA0dm4AgaBurTg== dependencies: level-filesystem "^1.0.1" level-js "^2.1.3" @@ -1678,16 +1544,16 @@ browserify-fs@^1.0.0: browserify-rsa@^4.0.0: version "4.0.1" - resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524" - integrity sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ= + resolved "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz" + integrity sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ= sha512-+YpEyaLDDvvdzIxQ+cCx73r5YEhS3ANGOkiHdyWqW4t3gdeoNEYjSiQwntbU4Uo2/9yRkpYX3SRFeH+7jc2Duw== dependencies: bn.js "^4.1.0" randombytes "^2.0.1" browserify-sign@^4.0.0: version "4.0.4" - resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.0.4.tgz#aa4eb68e5d7b658baa6bf6a57e630cbd7a93d298" - integrity sha1-qk62jl17ZYuqa/alfmMMvXqT0pg= + resolved "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz" + integrity sha1-qk62jl17ZYuqa/alfmMMvXqT0pg= sha512-D2ItxCwNtLcHRrOCuEDZQlIezlFyUV/N5IYz6TY1svu1noyThFuthoEjzT8ChZe3UEctqnwmykcPhet3Eiz58A== dependencies: bn.js "^4.1.1" browserify-rsa "^4.0.0" @@ -1699,7 +1565,7 @@ browserify-sign@^4.0.0: browserslist@^2.1.2: version "2.4.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-2.4.0.tgz#693ee93d01e66468a6348da5498e011f578f87f8" + resolved "https://registry.npmjs.org/browserslist/-/browserslist-2.4.0.tgz" integrity sha512-aM2Gt4x9bVlCUteADBS6JP0F+2tMWKM1jQzUulVROtdFWFIcIVvY76AJbr7GDqy0eDhn+PcnpzzivGxY4qiaKQ== dependencies: caniuse-lite "^1.0.30000718" @@ -1707,7 +1573,7 @@ browserslist@^2.1.2: browserslist@^4.16.6: version "4.16.8" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.16.8.tgz#cb868b0b554f137ba6e33de0ecff2eda403c4fb0" + resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.16.8.tgz" integrity sha512-sc2m9ohR/49sWEbPj14ZSSZqp+kbi16aLao42Hmn3Z8FpjuMaq2xCA2l4zl9ITfyzvnvyE0hcg62YkIGKxgaNQ== dependencies: caniuse-lite "^1.0.30001251" @@ -1718,28 +1584,28 @@ browserslist@^4.16.6: buf-compare@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/buf-compare/-/buf-compare-1.0.1.tgz#fef28da8b8113a0a0db4430b0b6467b69730b34a" - integrity sha1-/vKNqLgROgoNtEMLC2Rntpcws0o= + resolved "https://registry.npmjs.org/buf-compare/-/buf-compare-1.0.1.tgz" + integrity sha1-/vKNqLgROgoNtEMLC2Rntpcws0o= sha512-Bvx4xH00qweepGc43xFvMs5BKASXTbHaHm6+kDYIK9p/4iFwjATQkmPKHQSgJZzKbAymhztRbXUf1Nqhzl73/Q== buffer-crc32@~0.2.3: version "0.2.13" - resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" - integrity sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI= + resolved "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz" + integrity sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI= sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ== buffer-es6@^4.9.1, buffer-es6@^4.9.2: version "4.9.3" - resolved "https://registry.yarnpkg.com/buffer-es6/-/buffer-es6-4.9.3.tgz#f26347b82df76fd37e18bcb5288c4970cfd5c404" - integrity sha1-8mNHuC33b9N+GLy1KIxJcM/VxAQ= + resolved "https://registry.npmjs.org/buffer-es6/-/buffer-es6-4.9.3.tgz" + integrity sha1-8mNHuC33b9N+GLy1KIxJcM/VxAQ= sha512-Ibt+oXxhmeYJSsCkODPqNpPmyegefiD8rfutH1NYGhMZQhSp95Rz7haemgnJ6dxa6LT+JLLbtgOMORRluwKktw== buffer-shims@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51" - integrity sha1-mXjOMXOIxkmth5MCjDR37wRKi1E= + resolved "https://registry.npmjs.org/buffer-shims/-/buffer-shims-1.0.0.tgz" + integrity sha1-mXjOMXOIxkmth5MCjDR37wRKi1E= sha512-Zy8ZXMyxIT6RMTeY7OP/bDndfj6bwCan7SS98CEndS6deHwWPpseeHlwarNcBim+etXnF9HBc1non5JgDaJU1g== buffer-to-vinyl@^1.0.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/buffer-to-vinyl/-/buffer-to-vinyl-1.1.0.tgz#00f15faee3ab7a1dda2cde6d9121bffdd07b2262" - integrity sha1-APFfruOreh3aLN5tkSG//dB7ImI= + resolved "https://registry.npmjs.org/buffer-to-vinyl/-/buffer-to-vinyl-1.1.0.tgz" + integrity sha1-APFfruOreh3aLN5tkSG//dB7ImI= sha512-t6B4HXJ3YdJ/lXKhK3nlGW1aAvpQH2FMyHh25SmfdYkQAU3/R2MYo4VrY1DlQuZd8zLNOqWPxZFJILRuTkqaEQ== dependencies: file-type "^3.1.0" readable-stream "^2.0.2" @@ -1748,40 +1614,40 @@ buffer-to-vinyl@^1.0.0: buffer-xor@^1.0.2: version "1.0.3" - resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" - integrity sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk= + resolved "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz" + integrity sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk= sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ== -buffer@4.9.1: - version "4.9.1" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.1.tgz#6d1bb601b07a4efced97094132093027c95bc298" - integrity sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg= +buffer@^3.0.1: + version "3.6.0" + resolved "https://registry.npmjs.org/buffer/-/buffer-3.6.0.tgz" + integrity sha1-pyyTb3e5a/UvX357RnGAYoVR3vs= sha512-8EPF2aotiJKZKH/gBXOKDfD0P037yZRRY1oSzhpEUszwlwNR2rLcghiEoJERwKlhd4+ylH5TrSEyLqItPuP0pA== dependencies: - base64-js "^1.0.2" + base64-js "0.0.8" ieee754 "^1.1.4" isarray "^1.0.0" -buffer@^3.0.1: - version "3.6.0" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-3.6.0.tgz#a72c936f77b96bf52f5f7e7b467180628551defb" - integrity sha1-pyyTb3e5a/UvX357RnGAYoVR3vs= +buffer@4.9.1: + version "4.9.1" + resolved "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz" + integrity sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg= sha512-DNK4ruAqtyHaN8Zne7PkBTO+dD1Lr0YfTduMqlIyjvQIoztBkUxrvL+hKeLW8NXFKHOq/2upkxuoS9znQ9bW9A== dependencies: - base64-js "0.0.8" + base64-js "^1.0.2" ieee754 "^1.1.4" isarray "^1.0.0" builtin-modules@^1.1.0, builtin-modules@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" - integrity sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8= + resolved "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz" + integrity sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8= sha512-wxXCdllwGhI2kCC0MnvTGYTMvnVZTvqgypkiTI8Pa5tcz2i6VqsqwYGgqwXji+4RgCzms6EajE4IxiUH6HH8nQ== bytes@1: version "1.0.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-1.0.0.tgz#3569ede8ba34315fab99c3e92cb04c7220de1fa8" - integrity sha1-NWnt6Lo0MV+rmcPpLLBMciDeH6g= + resolved "https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz" + integrity sha1-NWnt6Lo0MV+rmcPpLLBMciDeH6g= sha512-/x68VkHLeTl3/Ll8IvxdwzhrT+IyKc52e/oyHhA2RwqPqswSnjVbSddfPRwAsJtbilMAPSRWwAlpxdYsSWOTKQ== cache-base@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" + resolved "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz" integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== dependencies: collection-visit "^1.0.0" @@ -1796,7 +1662,7 @@ cache-base@^1.0.1: cache-point@^0.4.1: version "0.4.1" - resolved "https://registry.yarnpkg.com/cache-point/-/cache-point-0.4.1.tgz#cc8c9cbd99d90d7b0c66910cd33d77a1aab8840e" + resolved "https://registry.npmjs.org/cache-point/-/cache-point-0.4.1.tgz" integrity sha512-4TgWfe9SF+bUy5cCql8gWHqKNrviufNwSYxLjf2utB0pY4+bdcuFwMmY1hDB+67Gz/L1vmhFNhePAjJTFBtV+Q== dependencies: array-back "^2.0.0" @@ -1805,57 +1671,52 @@ cache-point@^0.4.1: caller-path@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f" - integrity sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8= + resolved "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz" + integrity sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8= sha512-UJiE1otjXPF5/x+T3zTnSFiTOEmJoGTD9HmBoxnCUwho61a2eSNn/VwtwuIBDAo2SEOv1AJ7ARI5gCmohFLu/g== dependencies: callsites "^0.2.0" callsites@^0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca" - integrity sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo= + resolved "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz" + integrity sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo= sha512-Zv4Dns9IbXXmPkgRRUjAaJQgfN4xX5p6+RQFhWUqscdvvK2xK/ZL8b3IXIJsj+4sD+f24NwnWy2BY8AJ82JB0A== camelcase@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" - integrity sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0= + resolved "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz" + integrity sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0= sha512-FxAv7HpHrXbh3aPo4o2qxHay2lkLY3x5Mw3KeE4KQE8ysVfziWeRZDwcjauvwBSGEC/nXUPzZy8zeh4HokqOnw== -caniuse-lite@^1.0.30000718: - version "1.0.30000733" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000733.tgz#ebfc48254117cc0c66197a4536cb4397a6cfbccd" - integrity sha1-6/xIJUEXzAxmGXpFNstDl6bPvM0= - -caniuse-lite@^1.0.30001251: +caniuse-lite@^1.0.30000718, caniuse-lite@^1.0.30001251: version "1.0.30001252" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001252.tgz#cb16e4e3dafe948fc4a9bb3307aea054b912019a" + resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001252.tgz" integrity sha512-I56jhWDGMtdILQORdusxBOH+Nl/KgQSdDmpJezYddnAkVOmnoU8zwjTV9xAjMIYxr0iPreEAVylCGcmHCjfaOw== capture-stack-trace@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz#4a6fa07399c26bba47f0b2496b4d0fb408c5550d" - integrity sha1-Sm+gc5nCa7pH8LJJa00PtAjFVQ0= + resolved "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz" + integrity sha1-Sm+gc5nCa7pH8LJJa00PtAjFVQ0= sha512-8Yf8Cckt0aVhGIdBV0hOkN+xWECIfItME3K/auxEQw803TndhW5DkPxHvNBoYxxUJ8YG/896rAhpna2u3hG/5A== caseless@~0.12.0: version "0.12.0" - resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= + resolved "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz" + integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw== caseless@~0.8.0: version "0.8.0" - resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.8.0.tgz#5bca2881d41437f54b2407ebe34888c7b9ad4f7d" - integrity sha1-W8oogdQUN/VLJAfr40iIx7mtT30= + resolved "https://registry.npmjs.org/caseless/-/caseless-0.8.0.tgz" + integrity sha1-W8oogdQUN/VLJAfr40iIx7mtT30= sha512-RtOAnto0D6IIVC+dU+vHyH0tXs6BfZ/s0kaaT5+6loiwoi9O3+J5iASBkliQHrd8GSRNGERS7f8pgaRc895bAg== catharsis@^0.8.11: version "0.8.11" - resolved "https://registry.yarnpkg.com/catharsis/-/catharsis-0.8.11.tgz#d0eb3d2b82b7da7a3ce2efb1a7b00becc6643468" + resolved "https://registry.npmjs.org/catharsis/-/catharsis-0.8.11.tgz" integrity sha512-a+xUyMV7hD1BrDQA/3iPV7oc+6W26BgVJO05PGEoatMyIuPScQKsde6i3YorWX1qs+AZjnJ18NqdKoCtKiNh1g== dependencies: lodash "^4.17.14" caw@^1.0.1: version "1.2.0" - resolved "https://registry.yarnpkg.com/caw/-/caw-1.2.0.tgz#ffb226fe7efc547288dc62ee3e97073c212d1034" - integrity sha1-/7Im/n78VHKI3GLuPpcHPCEtEDQ= + resolved "https://registry.npmjs.org/caw/-/caw-1.2.0.tgz" + integrity sha1-/7Im/n78VHKI3GLuPpcHPCEtEDQ= sha512-GIAlMoessjWW8p0mkStU4kMvV35toVCAyOWhUajk7O0d7wJI8F9TDjfrkSoO26b0d1QsnDLmw5I3X+yd6OKorQ== dependencies: get-proxy "^1.0.1" is-obj "^1.0.0" @@ -1864,7 +1725,7 @@ caw@^1.0.1: caw@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/caw/-/caw-2.0.1.tgz#6c3ca071fc194720883c2dc5da9b074bfc7e9e95" + resolved "https://registry.npmjs.org/caw/-/caw-2.0.1.tgz" integrity sha512-Cg8/ZSBEa8ZVY9HspcGUYaK63d/bN7rqS3CYCzEGUxuYv6UlmcjzDUz2fCFFHyTvUW5Pk0I+3hkA3iXlIj6guA== dependencies: get-proxy "^2.0.0" @@ -1872,21 +1733,10 @@ caw@^2.0.0: tunnel-agent "^0.6.0" url-to-options "^1.0.1" -chalk@0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-0.5.1.tgz#663b3a648b68b55d04690d49167aa837858f2174" - integrity sha1-Zjs6ZItotV0EaQ1JFnqoN4WPIXQ= - dependencies: - ansi-styles "^1.1.0" - escape-string-regexp "^1.0.0" - has-ansi "^0.1.0" - strip-ansi "^0.3.0" - supports-color "^0.2.0" - -chalk@^1.0.0, chalk@^1.1.0, chalk@^1.1.1, chalk@^1.1.3: +chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3: version "1.1.3" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" - integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= + resolved "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz" + integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A== dependencies: ansi-styles "^2.2.1" escape-string-regexp "^1.0.2" @@ -1896,17 +1746,28 @@ chalk@^1.0.0, chalk@^1.1.0, chalk@^1.1.1, chalk@^1.1.3: chalk@^2.0.0: version "2.4.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== dependencies: ansi-styles "^3.2.1" escape-string-regexp "^1.0.5" supports-color "^5.3.0" +chalk@0.5.1: + version "0.5.1" + resolved "https://registry.npmjs.org/chalk/-/chalk-0.5.1.tgz" + integrity sha1-Zjs6ZItotV0EaQ1JFnqoN4WPIXQ= sha512-bIKA54hP8iZhyDT81TOsJiQvR1gW+ZYSXFaZUAvoD4wCHdbHY2actmpTE4x344ZlFqHbvoxKOaESULTZN2gstg== + dependencies: + ansi-styles "^1.1.0" + escape-string-regexp "^1.0.0" + has-ansi "^0.1.0" + strip-ansi "^0.3.0" + supports-color "^0.2.0" + chokidar@^1.7.0: version "1.7.0" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468" - integrity sha1-eY5ol3gVHIB2tLNg5e3SjNortGg= + resolved "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz" + integrity sha1-eY5ol3gVHIB2tLNg5e3SjNortGg= sha512-mk8fAWcRUOxY7btlLtitj3A45jOwSAxH4tOFOoEGbVsl6cL6pPMWUy7dwZ/canfj3QEdP6FHSnf/l1c6/WkzVg== dependencies: anymatch "^1.3.0" async-each "^1.0.0" @@ -1919,26 +1780,21 @@ chokidar@^1.7.0: optionalDependencies: fsevents "^1.0.0" -chownr@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.1.tgz#54726b8b8fff4df053c42187e801fb4412df1494" - integrity sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g== - cipher-base@^1.0.0, cipher-base@^1.0.1: version "1.0.3" - resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.3.tgz#eeabf194419ce900da3018c207d212f2a6df0a07" - integrity sha1-7qvxlEGc6QDaMBjCB9IS8qbfCgc= + resolved "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.3.tgz" + integrity sha1-7qvxlEGc6QDaMBjCB9IS8qbfCgc= sha512-Ci/6dw5oG7K7Eqvpo3xbK3WYpZdT8RjSUn87DZHkKShDVbB9iIxCBKNXdm7IlpV+gwt7uDwZDhV0mmrRSkcOsA== dependencies: inherits "^2.0.1" circular-json@^0.3.1: version "0.3.1" - resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.1.tgz#be8b36aefccde8b3ca7aa2d6afc07a37242c0d2d" - integrity sha1-vos2rvzN6LPKeqLWr8B6NyQsDS0= + resolved "https://registry.npmjs.org/circular-json/-/circular-json-0.3.1.tgz" + integrity sha1-vos2rvzN6LPKeqLWr8B6NyQsDS0= sha512-MTc6ffiOuzmPfRWVHjRscjzTQSYq16oouOebk6iHn/Tvp1mKBwQ/x33Trh7oZwI0e7wZyMV9KzDBWalzxjoIGQ== class-utils@^0.3.5: version "0.3.6" - resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" + resolved "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz" integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== dependencies: arr-union "^3.1.0" @@ -1948,54 +1804,54 @@ class-utils@^0.3.5: cli-cursor@^1.0.1: version "1.0.2" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987" - integrity sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc= + resolved "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz" + integrity sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc= sha512-25tABq090YNKkF6JH7lcwO0zFJTRke4Jcq9iX2nr/Sz0Cjjv4gckmwlW6Ty/aoyFd6z3ysR2hMGC2GFugmBo6A== dependencies: restore-cursor "^1.0.1" cli-width@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.1.0.tgz#b234ca209b29ef66fc518d9b98d5847b00edf00a" - integrity sha1-sjTKIJsp72b8UY2bmNWEewDt8Ao= + resolved "https://registry.npmjs.org/cli-width/-/cli-width-2.1.0.tgz" + integrity sha1-sjTKIJsp72b8UY2bmNWEewDt8Ao= sha512-w9+InVqlfC6hq5odRMsdb85XIIaCusCmCg21AsMEqGYKGHEWxr1CBYW4CCTSWC0FpsFGkY6FrOvjnnxGlY52Bg== clone-stats@^0.0.1: version "0.0.1" - resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-0.0.1.tgz#b88f94a82cf38b8791d58046ea4029ad88ca99d1" - integrity sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE= + resolved "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz" + integrity sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE= sha512-dhUqc57gSMCo6TX85FLfe51eC/s+Im2MLkAgJwfaRRexR2tA4dd3eLEW4L6efzHc2iNorrRRXITifnDLlRrhaA== clone@^0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/clone/-/clone-0.2.0.tgz#c6126a90ad4f72dbf5acdb243cc37724fe93fc1f" - integrity sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8= + resolved "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz" + integrity sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8= sha512-g62n3Kb9cszeZvmvBUqP/dsEJD/+80pDA8u8KqHnAPrVnQ2Je9rVV6opxkhuWCd1kCn2gOibzDKxCtBvD3q5kA== clone@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.2.tgz#260b7a99ebb1edfe247538175f783243cb19d149" - integrity sha1-Jgt6meux7f4kdTgXX3gyQ8sZ0Uk= + resolved "https://registry.npmjs.org/clone/-/clone-1.0.2.tgz" + integrity sha1-Jgt6meux7f4kdTgXX3gyQ8sZ0Uk= sha512-b2ijK6P2aNZYyFrb1B3a4kdAtaRueI+SpAKYNhR6i+R3xcF32vN1BLq8UoLU+L0NguGAg/9UQauaVOKrEij3sQ== clone@~0.1.9: version "0.1.19" - resolved "https://registry.yarnpkg.com/clone/-/clone-0.1.19.tgz#613fb68639b26a494ac53253e15b1a6bd88ada85" - integrity sha1-YT+2hjmyaklKxTJT4Vsaa9iK2oU= - -co@3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/co/-/co-3.1.0.tgz#4ea54ea5a08938153185e15210c68d9092bc1b78" - integrity sha1-TqVOpaCJOBUxheFSEMaNkJK8G3g= + resolved "https://registry.npmjs.org/clone/-/clone-0.1.19.tgz" + integrity sha1-YT+2hjmyaklKxTJT4Vsaa9iK2oU= sha512-IO78I0y6JcSpEPHzK4obKdsL7E7oLdRVDVOLwr2Hkbjsb+Eoz0dxW6tef0WizoKu0gLC4oZSZuEF4U2K6w1WQw== co@^4.6.0: version "4.6.0" - resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" - integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= + resolved "https://registry.npmjs.org/co/-/co-4.6.0.tgz" + integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ== + +co@3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/co/-/co-3.1.0.tgz" + integrity sha1-TqVOpaCJOBUxheFSEMaNkJK8G3g= sha512-CQsjCRiNObI8AtTsNIBDRMQ4oMR83CzEswHYahClvul7gKk+lDQiOKv+5qh7LQWf5sh6jkZNispz/QlsZxyNgA== code-point-at@^1.0.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" - integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= + resolved "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz" + integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA== collect-all@^1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/collect-all/-/collect-all-1.0.3.tgz#1abcc20448b58a1447487fcf34130e9512b0acf8" + resolved "https://registry.npmjs.org/collect-all/-/collect-all-1.0.3.tgz" integrity sha512-0y0rBgoX8IzIjBAUnO73SEtSb4Mhk3IoceWJq5zZSxb9mWORhWH8xLYo4EDSOE1jRBk1LhmfjqWFFt10h/+MEA== dependencies: stream-connect "^1.0.2" @@ -2003,51 +1859,51 @@ collect-all@^1.0.3: collection-visit@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" - integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= + resolved "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz" + integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw== dependencies: map-visit "^1.0.0" object-visit "^1.0.0" color-convert@^1.9.0: version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== dependencies: color-name "1.1.3" color-name@1.1.3: version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" + integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== colorette@^1.3.0: version "1.3.0" - resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.3.0.tgz#ff45d2f0edb244069d3b772adeb04fed38d0a0af" + resolved "https://registry.npmjs.org/colorette/-/colorette-1.3.0.tgz" integrity sha512-ecORCqbSFP7Wm8Y6lyqMJjexBQqXSF7SSeaTyGGphogUjBlFP9m9o08wy86HL2uB7fMTxtOUzLMk7ogKcxMg1w== colors@1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" - integrity sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs= + resolved "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz" + integrity sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs= sha512-pFGrxThWcWQ2MsAz6RtgeWe4NK2kUE1WfsrvvlctdII745EW9I0yflqhe7++M5LEc7bV2c/9/5zc8sFcpL0Drw== combined-stream@^1.0.5, combined-stream@~1.0.5: version "1.0.7" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.7.tgz#2d1d24317afb8abe95d6d2c0b07b57813539d828" + resolved "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.7.tgz" integrity sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w== dependencies: delayed-stream "~1.0.0" combined-stream@~0.0.4, combined-stream@~0.0.5: version "0.0.7" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-0.0.7.tgz#0137e657baa5a7541c57ac37ac5fc07d73b4dc1f" - integrity sha1-ATfmV7qlp1QcV6w3rF/AfXO03B8= + resolved "https://registry.npmjs.org/combined-stream/-/combined-stream-0.0.7.tgz" + integrity sha1-ATfmV7qlp1QcV6w3rF/AfXO03B8= sha512-qfexlmLp9MyrkajQVyjEDb0Vj+KhRgR/rxLiVhaihlT+ZkX0lReqtH6Ack40CvMDERR4b5eFp3CreskpBs1Pig== dependencies: delayed-stream "0.0.5" command-line-args@^5.0.0: version "5.1.1" - resolved "https://registry.yarnpkg.com/command-line-args/-/command-line-args-5.1.1.tgz#88e793e5bb3ceb30754a86863f0401ac92fd369a" + resolved "https://registry.npmjs.org/command-line-args/-/command-line-args-5.1.1.tgz" integrity sha512-hL/eG8lrll1Qy1ezvkant+trihbGnaKaeEjj6Scyr3DN+RC7iQ5Rz84IeLERfAWDGo0HBSNAakczwgCilDXnWg== dependencies: array-back "^3.0.1" @@ -2057,7 +1913,7 @@ command-line-args@^5.0.0: command-line-tool@^0.8.0: version "0.8.0" - resolved "https://registry.yarnpkg.com/command-line-tool/-/command-line-tool-0.8.0.tgz#b00290ef1dfc11cc731dd1f43a92cfa5f21e715b" + resolved "https://registry.npmjs.org/command-line-tool/-/command-line-tool-0.8.0.tgz" integrity sha512-Xw18HVx/QzQV3Sc5k1vy3kgtOeGmsKIqwtFFoyjI4bbcpSgnw2CWVULvtakyw4s6fhyAdI6soQQhXc2OzJy62g== dependencies: ansi-escape-sequences "^4.0.0" @@ -2066,64 +1922,64 @@ command-line-tool@^0.8.0: command-line-usage "^4.1.0" typical "^2.6.1" +command-line-usage@^4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/command-line-usage/-/command-line-usage-4.1.0.tgz" + integrity sha512-MxS8Ad995KpdAC0Jopo/ovGIroV/m0KHwzKfXxKag6FHOkGsH8/lv5yjgablcRxCJJC0oJeUMuO/gmaq+Wq46g== + dependencies: + ansi-escape-sequences "^4.0.0" + array-back "^2.0.0" + table-layout "^0.4.2" + typical "^2.6.1" + command-line-usage@4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/command-line-usage/-/command-line-usage-4.0.0.tgz#816b32788b58f9feba44d1e6dac60fcaeb29b5ea" - integrity sha1-gWsyeItY+f66RNHm2sYPyuspteo= + resolved "https://registry.npmjs.org/command-line-usage/-/command-line-usage-4.0.0.tgz" + integrity sha1-gWsyeItY+f66RNHm2sYPyuspteo= sha512-lpXodL6Vrsu9mF1CkyEKmviVLVMGz9okaEv9iekp44nauVy9Qd0FEfRB0x1bd/MTwxXT54sNNIFhu4HUO6OrbQ== dependencies: ansi-escape-sequences "^3.0.0" array-back "^1.0.4" table-layout "^0.4.0" typical "^2.6.0" -command-line-usage@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/command-line-usage/-/command-line-usage-4.1.0.tgz#a6b3b2e2703b4dcf8bd46ae19e118a9a52972882" - integrity sha512-MxS8Ad995KpdAC0Jopo/ovGIroV/m0KHwzKfXxKag6FHOkGsH8/lv5yjgablcRxCJJC0oJeUMuO/gmaq+Wq46g== +commander@~2.8.1: + version "2.8.1" + resolved "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz" + integrity sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ= sha512-+pJLBFVk+9ZZdlAOB5WuIElVPPth47hILFkmGym57aq8kwxsowvByvB0DHs1vQAhyMZzdcpTtF0VDKGkSDR4ZQ== dependencies: - ansi-escape-sequences "^4.0.0" - array-back "^2.0.0" - table-layout "^0.4.2" - typical "^2.6.1" + graceful-readlink ">= 1.0.0" commander@2.6.0: version "2.6.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.6.0.tgz#9df7e52fb2a0cb0fb89058ee80c3104225f37e1d" - integrity sha1-nfflL7Kgyw+4kFjugMMQQiXzfh0= + resolved "https://registry.npmjs.org/commander/-/commander-2.6.0.tgz" + integrity sha1-nfflL7Kgyw+4kFjugMMQQiXzfh0= sha512-PhbTMT+ilDXZKqH8xbvuUY2ZEQNef0Q7DKxgoEKb4ccytsdvVVJmYqR0sGbi96nxU6oGrwEIQnclpK2NBZuQlg== commander@2.9.0: version "2.9.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4" - integrity sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q= - dependencies: - graceful-readlink ">= 1.0.0" - -commander@~2.8.1: - version "2.8.1" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.8.1.tgz#06be367febfda0c330aa1e2a072d3dc9762425d4" - integrity sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ= + resolved "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz" + integrity sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q= sha512-bmkUukX8wAOjHdN26xj5c4ctEV22TQ7dQYhSmuckKhToXrkUn0iIaolHdIxYYqD55nhpSPA9zPQ1yP57GdXP2A== dependencies: graceful-readlink ">= 1.0.0" common-sequence@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/common-sequence/-/common-sequence-1.0.2.tgz#30e07f3f8f6f7f9b3dee854f20b2d39eee086de8" - integrity sha1-MOB/P49vf5s97oVPILLTnu4Ibeg= + resolved "https://registry.npmjs.org/common-sequence/-/common-sequence-1.0.2.tgz" + integrity sha1-MOB/P49vf5s97oVPILLTnu4Ibeg= sha512-z3ln8PqfoBRwY1X0B1W0NEvfuo3+lZdvVjYaxusK84FPGkBy+ZqfbMhgdGOLr1v1dv13z5KYOtbL/yupL4I8Yw== component-emitter@^1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" - integrity sha1-E3kY1teCg/ffemt8WmPhQOaUJeY= + resolved "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz" + integrity sha1-E3kY1teCg/ffemt8WmPhQOaUJeY= sha512-jPatnhd33viNplKjqXKRkGU345p263OIWzDL2wH3LGIGp5Kojo+uXizHmOADRvhGFFTnJqX3jBAKP6vvmSDKcA== concat-map@0.0.1: version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= + resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" + integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== concat-stream@^1.4.4, concat-stream@^1.4.6, concat-stream@^1.4.7: version "1.6.0" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7" - integrity sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc= + resolved "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.0.tgz" + integrity sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc= sha512-afaQKFIg+fob6EzbytOlXZZTYrdZWaegQx2b6AWg9MoALXgctIcbRQrjcu6Wsh5801lVXaQYVwBw6vlATW0qPA== dependencies: inherits "^2.0.3" readable-stream "^2.2.2" @@ -2131,8 +1987,8 @@ concat-stream@^1.4.4, concat-stream@^1.4.6, concat-stream@^1.4.7: concurrently@3.5.0: version "3.5.0" - resolved "https://registry.yarnpkg.com/concurrently/-/concurrently-3.5.0.tgz#8cf1b7707a6916a78a4ff5b77bb04dec54b379b2" - integrity sha1-jPG3cHppFqeKT/W3e7BN7FSzebI= + resolved "https://registry.npmjs.org/concurrently/-/concurrently-3.5.0.tgz" + integrity sha1-jPG3cHppFqeKT/W3e7BN7FSzebI= sha512-Z2iVM5+c0VxKmENTXrG/kp+MUhWEEH+wI5wV/L8CTFJDb/uae1zSVIkNM7o3W4Tdt42pv7RGsOICaskWy9bqSA== dependencies: chalk "0.5.1" commander "2.6.0" @@ -2145,103 +2001,88 @@ concurrently@3.5.0: config-chain@^1.1.11: version "1.1.11" - resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.11.tgz#aba09747dfbe4c3e70e766a6e41586e1859fc6f2" - integrity sha1-q6CXR9++TD5w52am5BWG4YWfxvI= + resolved "https://registry.npmjs.org/config-chain/-/config-chain-1.1.11.tgz" + integrity sha1-q6CXR9++TD5w52am5BWG4YWfxvI= sha512-ub83Cn5GRG5DEdKRxrJzsBf0UqXT6eZJL2zBaJz2arGNOGjFybvMyurYmcdFTmUJNA5fPVIz4xcIWI1qhxju9A== dependencies: ini "^1.3.4" proto-list "~1.2.1" config-master@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/config-master/-/config-master-3.1.0.tgz#667663590505a283bf26a484d68489d74c5485da" - integrity sha1-ZnZjWQUFooO/JqSE1oSJ10xUhdo= + resolved "https://registry.npmjs.org/config-master/-/config-master-3.1.0.tgz" + integrity sha1-ZnZjWQUFooO/JqSE1oSJ10xUhdo= sha512-n7LBL1zBzYdTpF1mx5DNcZnZn05CWIdsdvtPL4MosvqbBUK3Rq6VWEtGUuF3Y0s9/CIhMejezqlSkP6TnCJ/9g== dependencies: walk-back "^2.0.1" -console-control-strings@^1.0.0, console-control-strings@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" - integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= - contains-path@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a" - integrity sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo= + resolved "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz" + integrity sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo= sha512-OKZnPGeMQy2RPaUIBPFFd71iNf4791H12MCRuVQDnzGRwCYNYmTDy5pdafo2SLAcEMKzTOQnLWG4QdcjeJUMEg== content-disposition@^0.5.2: version "0.5.2" - resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" - integrity sha1-DPaLud318r55YcOoUXjLhdunjLQ= + resolved "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz" + integrity sha1-DPaLud318r55YcOoUXjLhdunjLQ= sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA== continuable-cache@^0.3.1: version "0.3.1" - resolved "https://registry.yarnpkg.com/continuable-cache/-/continuable-cache-0.3.1.tgz#bd727a7faed77e71ff3985ac93351a912733ad0f" - integrity sha1-vXJ6f67XfnH/OYWskzUakSczrQ8= - -convert-source-map@^1.1.1, convert-source-map@^1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.0.tgz#9acd70851c6d5dfdd93d9282e5edf94a03ff46b5" - integrity sha1-ms1whRxtXf3ZPZKC5e35SgP/RrU= + resolved "https://registry.npmjs.org/continuable-cache/-/continuable-cache-0.3.1.tgz" + integrity sha1-vXJ6f67XfnH/OYWskzUakSczrQ8= sha512-TF30kpKhTH8AGCG3dut0rdd/19B7Z+qCnrMoBLpyQu/2drZdNrrpcjPEoJeSVsQM+8KmWG5O56oPDjSSUsuTyA== -convert-source-map@^1.7.0: +convert-source-map@^1.1.1, convert-source-map@^1.5.0, convert-source-map@^1.7.0: version "1.8.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369" + resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz" integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== dependencies: safe-buffer "~5.1.1" copy-descriptor@^0.1.0: version "0.1.1" - resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" - integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= + resolved "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz" + integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw== core-assert@^0.2.0: version "0.2.1" - resolved "https://registry.yarnpkg.com/core-assert/-/core-assert-0.2.1.tgz#f85e2cf9bfed28f773cc8b3fa5c5b69bdc02fe3f" - integrity sha1-+F4s+b/tKPdzzIs/pcW2m9wC/j8= + resolved "https://registry.npmjs.org/core-assert/-/core-assert-0.2.1.tgz" + integrity sha1-+F4s+b/tKPdzzIs/pcW2m9wC/j8= sha512-IG97qShIP+nrJCXMCgkNZgH7jZQ4n8RpPyPeXX++T6avR/KhLhgLiHKoEn5Rc1KjfycSfA9DMa6m+4C4eguHhw== dependencies: buf-compare "^1.0.0" is-error "^2.2.0" -core-js@^2.0.0, core-js@^2.4.0: - version "2.4.1" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.4.1.tgz#4de911e667b0eae9124e34254b53aea6fc618d3e" - integrity sha1-TekR5mew6ukSTjQlS1OupvxhjT4= - -core-js@^2.4.1, core-js@^2.5.0: +core-js@^2.0.0, core-js@^2.4.0, core-js@^2.4.1, core-js@^2.5.0: version "2.5.0" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.0.tgz#569c050918be6486b3837552028ae0466b717086" - integrity sha1-VpwFCRi+ZIazg3VSAorgRmtxcIY= + resolved "https://registry.npmjs.org/core-js/-/core-js-2.5.0.tgz" + integrity sha1-VpwFCRi+ZIazg3VSAorgRmtxcIY= sha512-mAPLSnIVZAwVEf8OZtnNcF2BL1d6DHV3EvIWj46UDBYNAqLxx7mLLpQxe8/1vtrkzt1KIyjmOqOG3pa+bZf7Fw== -core-util-is@1.0.2, core-util-is@~1.0.0: +core-util-is@~1.0.0, core-util-is@1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" - integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= + resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz" + integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ== corser@~2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/corser/-/corser-2.0.1.tgz#8eda252ecaab5840dcd975ceb90d9370c819ff87" - integrity sha1-jtolLsqrWEDc2XXOuQ2TcMgZ/4c= + resolved "https://registry.npmjs.org/corser/-/corser-2.0.1.tgz" + integrity sha1-jtolLsqrWEDc2XXOuQ2TcMgZ/4c= sha512-utCYNzRSQIZNPIcGZdQc92UVJYAhtGAteCFg0yRaFm8f0P+CPtyGyHXJcGXnffjCybUCEx3FQ2G7U3/o9eIkVQ== create-ecdh@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.0.tgz#888c723596cdf7612f6498233eebd7a35301737d" - integrity sha1-iIxyNZbN92EvZJgjPuvXo1MBc30= + resolved "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.0.tgz" + integrity sha1-iIxyNZbN92EvZJgjPuvXo1MBc30= sha512-7rYnhx2rzljQb/UszJC+KvDO8muh2kJm0meQ+VxlDoEHQ3vnZcaHRLCdIReCasEt3s5gJUy4FkkOw2L7HomsQQ== dependencies: bn.js "^4.1.0" elliptic "^6.0.0" create-error-class@^3.0.1: version "3.0.2" - resolved "https://registry.yarnpkg.com/create-error-class/-/create-error-class-3.0.2.tgz#06be7abef947a3f14a30fd610671d401bca8b7b6" - integrity sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y= + resolved "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz" + integrity sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y= sha512-gYTKKexFO3kh200H1Nit76sRwRtOY32vQd3jpAQKpLtZqyNsSQNfI4N7o3eP2wUjV35pTWKRYqFUDBvUha/Pkw== dependencies: capture-stack-trace "^1.0.0" create-hash@^1.1.0, create-hash@^1.1.1: version "1.1.2" - resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.1.2.tgz#51210062d7bb7479f6c65bb41a92208b1d61abad" - integrity sha1-USEAYte7dHn2xlu0GpIgix1hq60= + resolved "https://registry.npmjs.org/create-hash/-/create-hash-1.1.2.tgz" + integrity sha1-USEAYte7dHn2xlu0GpIgix1hq60= sha512-pGMQxzwaMm3+Bsw36lktDMRB6q50KdoLxBY1hvB4jf/wB7bgmSACscKCVnJQpDwo7VoLKTMomEuaeNHKtNT/rw== dependencies: cipher-base "^1.0.1" inherits "^2.0.1" @@ -2250,35 +2091,30 @@ create-hash@^1.1.0, create-hash@^1.1.1: create-hmac@^1.1.0, create-hmac@^1.1.2: version "1.1.4" - resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.4.tgz#d3fb4ba253eb8b3f56e39ea2fbcb8af747bd3170" - integrity sha1-0/tLolPriz9W456i+8uK90e9MXA= + resolved "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.4.tgz" + integrity sha1-0/tLolPriz9W456i+8uK90e9MXA= sha512-USPrJgMKn+vsZuEcvwmrZV7D2UWLhWlQJ9HHGrS84fxX6tSxfO6MAacnD6alDA3a0LAVtC1N3BU1Wb/6H/yUVQ== dependencies: create-hash "^1.1.0" inherits "^2.0.1" cryptiles@0.2.x: version "0.2.2" - resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-0.2.2.tgz#ed91ff1f17ad13d3748288594f8a48a0d26f325c" - integrity sha1-7ZH/HxetE9N0gohZT4pIoNJvMlw= + resolved "https://registry.npmjs.org/cryptiles/-/cryptiles-0.2.2.tgz" + integrity sha1-7ZH/HxetE9N0gohZT4pIoNJvMlw= sha512-gvWSbgqP+569DdslUiCelxIv3IYK5Lgmq1UrRnk+s1WxQOQ16j3GPDcjdtgL5Au65DU/xQi6q3xPtf5Kta+3IQ== dependencies: boom "0.4.x" cryptiles@2.x.x: version "2.0.5" - resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8" - integrity sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g= + resolved "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz" + integrity sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g= sha512-FFN5KwpvvQTTS5hWPxrU8/QE4kQUc6uwZcrnlMBN82t1MgAtq8mnoDwINBly9Tdr02seeIIhtdF+UH1feBYGog== dependencies: boom "2.x.x" -crypto-browserify@1.0.9: - version "1.0.9" - resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-1.0.9.tgz#cc5449685dfb85eb11c9828acc7cb87ab5bbfcc0" - integrity sha1-zFRJaF37hesRyYKKzHy4erW7/MA= - crypto-browserify@^3.11.0: version "3.11.0" - resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.11.0.tgz#3652a0906ab9b2a7e0c3ce66a408e957a2485522" - integrity sha1-NlKgkGq5sqfgw85mpAjpV6JIVSI= + resolved "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.11.0.tgz" + integrity sha1-NlKgkGq5sqfgw85mpAjpV6JIVSI= sha512-P9qJXODwW1V0tNZ71FhQEViD3EEfFhojQMOiN1P8C7DrbMJSvU6l3cLnVN0G7ujoNpaQwvFYUPNuEYRyQcwMfA== dependencies: browserify-cipher "^1.0.0" browserify-sign "^4.0.0" @@ -2291,84 +2127,75 @@ crypto-browserify@^3.11.0: public-encrypt "^4.0.0" randombytes "^2.0.0" +crypto-browserify@1.0.9: + version "1.0.9" + resolved "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-1.0.9.tgz" + integrity sha1-zFRJaF37hesRyYKKzHy4erW7/MA= sha512-fWmkaZPmccreTmANMdpvI0UrF34pzTAZDLKDcF0n5ThwpyeAs+DtSVxyhrZc6kHFiOFdyzjW5uZ8jAWE3kNY6A== + ctype@0.5.3: version "0.5.3" - resolved "https://registry.yarnpkg.com/ctype/-/ctype-0.5.3.tgz#82c18c2461f74114ef16c135224ad0b9144ca12f" - integrity sha1-gsGMJGH3QRTvFsE1IkrQuRRMoS8= + resolved "https://registry.npmjs.org/ctype/-/ctype-0.5.3.tgz" + integrity sha1-gsGMJGH3QRTvFsE1IkrQuRRMoS8= sha512-T6CEkoSV4q50zW3TlTHMbzy1E5+zlnNcY+yb7tWVYlTwPhx9LpnfAkd4wecpWknDyptp4k97LUZeInlf6jdzBg== d@1: version "1.0.0" - resolved "https://registry.yarnpkg.com/d/-/d-1.0.0.tgz#754bb5bfe55451da69a58b94d45f4c5b0462d58f" - integrity sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8= + resolved "https://registry.npmjs.org/d/-/d-1.0.0.tgz" + integrity sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8= sha512-9x1NruMD5YQ7xccKbGEy/bjitRfn5LEIhJIXIOAXC8I1laA5gfezUMVES1/vjLxfGzZjirLLBzEqxMO2/LzGxQ== dependencies: es5-ext "^0.10.9" damerau-levenshtein@^1.0.0: version "1.0.4" - resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.4.tgz#03191c432cb6eea168bb77f3a55ffdccb8978514" - integrity sha1-AxkcQyy27qFou3fzpV/9zLiXhRQ= + resolved "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.4.tgz" + integrity sha1-AxkcQyy27qFou3fzpV/9zLiXhRQ= sha512-AY8nROpyLepcVGZCfpdoYAgE1QK5cf1k/1OAfDrRqHmtcVZ0fagvngbeWRia0e9CCJFqyacqNJ5IHHCvfJH6/w== dashdash@^1.12.0: version "1.14.1" - resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" - integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= + resolved "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz" + integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g== dependencies: assert-plus "^1.0.0" date-fns@^1.23.0: version "1.28.5" - resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-1.28.5.tgz#257cfc45d322df45ef5658665967ee841cd73faf" - integrity sha1-JXz8RdMi30XvVlhmWWfuhBzXP68= + resolved "https://registry.npmjs.org/date-fns/-/date-fns-1.28.5.tgz" + integrity sha1-JXz8RdMi30XvVlhmWWfuhBzXP68= sha512-Yga7k933zQ2qRhjXRUzkyEOo4RNsfPZAPoD+EKfDGwAkr8+q61c66C+2so7Ucpm9SZwRKkWDL4PRmhaTkHOYUQ== dateformat@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-2.0.0.tgz#2743e3abb5c3fc2462e527dca445e04e9f4dee17" - integrity sha1-J0Pjq7XD/CRi5SfcpEXgTp9N7hc= + resolved "https://registry.npmjs.org/dateformat/-/dateformat-2.0.0.tgz" + integrity sha1-J0Pjq7XD/CRi5SfcpEXgTp9N7hc= sha512-k6+FtJ8RoNx9V0yHo6lURQWlFqc8wbo0t/kocHvfMJQiXTW+izR6bubmB9HeWuUiZFtpMrAm+wPMGmGhfPbNlQ== -debug@2.6.8, debug@^2.6.8, debug@~2.6.7: +debug@^2.1.1, debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@~2.6.7, debug@2.6.8: version "2.6.8" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc" - integrity sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw= - dependencies: - ms "2.0.0" - -debug@^2.1.1: - version "2.6.3" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.3.tgz#0f7eb8c30965ec08c72accfa0130c8b79984141d" - integrity sha1-D364wwll7AjHKsz6ATDIt5mEFB0= - dependencies: - ms "0.7.2" - -debug@^2.1.2, debug@^2.2.0, debug@^2.3.3: - version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== + resolved "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz" + integrity sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw= sha512-E22fsyWPt/lr4/UgQLt/pXqerGMDsanhbnmqIS3VAXuDi1v3IpiwXe2oncEIondHSBuPDWRoK/pMjlvi8FuOXQ== dependencies: ms "2.0.0" debug@^4.1.0: version "4.3.2" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b" + resolved "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz" integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw== dependencies: ms "2.1.2" decode-uri-component@^0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" - integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= + resolved "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz" + integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og== decompress-response@^3.2.0: version "3.3.0" - resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3" - integrity sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M= + resolved "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz" + integrity sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M= sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA== dependencies: mimic-response "^1.0.0" decompress-tar@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/decompress-tar/-/decompress-tar-3.1.0.tgz#217c789f9b94450efaadc5c5e537978fc333c466" - integrity sha1-IXx4n5uURQ76rcXF5TeXj8MzxGY= + resolved "https://registry.npmjs.org/decompress-tar/-/decompress-tar-3.1.0.tgz" + integrity sha1-IXx4n5uURQ76rcXF5TeXj8MzxGY= sha512-YuF7b9jA2bnBhf0/HQ/5UDgX5Ogzw1xJz6mWOFRctyOcmZPjJx3jjde9tCBjysvYscutRTPi35Q20mPDA74SKQ== dependencies: is-tar "^1.0.0" object-assign "^2.0.0" @@ -2379,7 +2206,7 @@ decompress-tar@^3.0.0: decompress-tar@^4.0.0, decompress-tar@^4.1.0, decompress-tar@^4.1.1: version "4.1.1" - resolved "https://registry.yarnpkg.com/decompress-tar/-/decompress-tar-4.1.1.tgz#718cbd3fcb16209716e70a26b84e7ba4592e5af1" + resolved "https://registry.npmjs.org/decompress-tar/-/decompress-tar-4.1.1.tgz" integrity sha512-JdJMaCrGpB5fESVyxwpCx4Jdj2AagLmv3y58Qy4GE6HMVjWz1FeVQk1Ct4Kye7PftcdOo/7U7UKzYBJgqnGeUQ== dependencies: file-type "^5.2.0" @@ -2388,8 +2215,8 @@ decompress-tar@^4.0.0, decompress-tar@^4.1.0, decompress-tar@^4.1.1: decompress-tarbz2@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/decompress-tarbz2/-/decompress-tarbz2-3.1.0.tgz#8b23935681355f9f189d87256a0f8bdd96d9666d" - integrity sha1-iyOTVoE1X58YnYclag+L3ZbZZm0= + resolved "https://registry.npmjs.org/decompress-tarbz2/-/decompress-tarbz2-3.1.0.tgz" + integrity sha1-iyOTVoE1X58YnYclag+L3ZbZZm0= sha512-UVCUT54LTEf8uqoytmEMVSwTVl/rZJ0o6bUJsJ7psRmICUzCsz9BJ31drbX0NtgwD9cFzIwKProa2yThmVBKvQ== dependencies: is-bzip2 "^1.0.0" object-assign "^2.0.0" @@ -2401,7 +2228,7 @@ decompress-tarbz2@^3.0.0: decompress-tarbz2@^4.0.0: version "4.1.1" - resolved "https://registry.yarnpkg.com/decompress-tarbz2/-/decompress-tarbz2-4.1.1.tgz#3082a5b880ea4043816349f378b56c516be1a39b" + resolved "https://registry.npmjs.org/decompress-tarbz2/-/decompress-tarbz2-4.1.1.tgz" integrity sha512-s88xLzf1r81ICXLAVQVzaN6ZmX4A6U4z2nMbOwobxkLoIIfjVMBg7TeguTUXkKeXni795B6y5rnvDw7rxhAq9A== dependencies: decompress-tar "^4.1.0" @@ -2412,8 +2239,8 @@ decompress-tarbz2@^4.0.0: decompress-targz@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/decompress-targz/-/decompress-targz-3.1.0.tgz#b2c13df98166268991b715d6447f642e9696f5a0" - integrity sha1-ssE9+YFmJomRtxXWRH9kLpaW9aA= + resolved "https://registry.npmjs.org/decompress-targz/-/decompress-targz-3.1.0.tgz" + integrity sha1-ssE9+YFmJomRtxXWRH9kLpaW9aA= sha512-umeSWvrmd9/qcmGaf0oAc+Gx7La0B4Uxo+HXoo0HqrjEbCzn7SMiWvmE5sS56B+GqaoJ8z64ORZCRaOzKCYi/w== dependencies: is-gzip "^1.0.0" object-assign "^2.0.0" @@ -2424,7 +2251,7 @@ decompress-targz@^3.0.0: decompress-targz@^4.0.0: version "4.1.1" - resolved "https://registry.yarnpkg.com/decompress-targz/-/decompress-targz-4.1.1.tgz#c09bc35c4d11f3de09f2d2da53e9de23e7ce1eee" + resolved "https://registry.npmjs.org/decompress-targz/-/decompress-targz-4.1.1.tgz" integrity sha512-4z81Znfr6chWnRDNfFNqLwPvm4db3WuZkqV+UgXQzSngG3CEKdBkw5jrv3axjjL96glyiiKjsxJG3X6WBZwX3w== dependencies: decompress-tar "^4.1.1" @@ -2433,8 +2260,8 @@ decompress-targz@^4.0.0: decompress-unzip@^3.0.0: version "3.4.0" - resolved "https://registry.yarnpkg.com/decompress-unzip/-/decompress-unzip-3.4.0.tgz#61475b4152066bbe3fee12f9d629d15fe6478eeb" - integrity sha1-YUdbQVIGa74/7hL51inRX+ZHjus= + resolved "https://registry.npmjs.org/decompress-unzip/-/decompress-unzip-3.4.0.tgz" + integrity sha1-YUdbQVIGa74/7hL51inRX+ZHjus= sha512-rclee6Q/+aChW77vbHmtGNZi3ko1Qhsp9Brs5mVyhBSeg+K4n+6MHo47y/+7GsmYZuEqVJ46LjwT3/N8N50jZQ== dependencies: is-zip "^1.0.0" read-all-stream "^3.0.0" @@ -2446,8 +2273,8 @@ decompress-unzip@^3.0.0: decompress-unzip@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/decompress-unzip/-/decompress-unzip-4.0.1.tgz#deaaccdfd14aeaf85578f733ae8210f9b4848f69" - integrity sha1-3qrM39FK6vhVePczroIQ+bSEj2k= + resolved "https://registry.npmjs.org/decompress-unzip/-/decompress-unzip-4.0.1.tgz" + integrity sha1-3qrM39FK6vhVePczroIQ+bSEj2k= sha512-1fqeluvxgnn86MOh66u8FjbtJpAFv5wgCT9Iw8rcBqQcCo5tO8eiJw7NNTrvt9n4CRBVq7CstiS922oPgyGLrw== dependencies: file-type "^3.8.0" get-stream "^2.2.0" @@ -2456,8 +2283,8 @@ decompress-unzip@^4.0.1: decompress@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/decompress/-/decompress-3.0.0.tgz#af1dd50d06e3bfc432461d37de11b38c0d991bed" - integrity sha1-rx3VDQbjv8QyRh033hGzjA2ZG+0= + resolved "https://registry.npmjs.org/decompress/-/decompress-3.0.0.tgz" + integrity sha1-rx3VDQbjv8QyRh033hGzjA2ZG+0= sha512-QCl8WTT4FSft5F+0M0InHKO6UYFfYhw5++vktTKpmUsQ6YUMPcBwMu7Sp3P0lMGk00hTNHohdhfdi9+OswLJuQ== dependencies: buffer-to-vinyl "^1.0.0" concat-stream "^1.4.6" @@ -2471,8 +2298,8 @@ decompress@^3.0.0: decompress@^4.0.0: version "4.2.0" - resolved "https://registry.yarnpkg.com/decompress/-/decompress-4.2.0.tgz#7aedd85427e5a92dacfe55674a7c505e96d01f9d" - integrity sha1-eu3YVCflqS2s/lVnSnxQXpbQH50= + resolved "https://registry.npmjs.org/decompress/-/decompress-4.2.0.tgz" + integrity sha1-eu3YVCflqS2s/lVnSnxQXpbQH50= sha512-uTFGAM4YjgQ8hN7s4+EnUx5WkU/BphboGX5o6qUEDnEEZm+eL/QnimHc3ZUORod15QXaAJGyXpWdeO0NhKCKhQ== dependencies: decompress-tar "^4.0.0" decompress-tarbz2 "^4.0.0" @@ -2483,65 +2310,60 @@ decompress@^4.0.0: pify "^2.3.0" strip-dirs "^2.0.0" -deep-extend@^0.6.0, deep-extend@~0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" - integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== - deep-extend@~0.4.0: version "0.4.2" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.2.tgz#48b699c27e334bf89f10892be432f6e4c7d34a7f" - integrity sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8= + resolved "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.2.tgz" + integrity sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8= sha512-cQ0iXSEKi3JRNhjUsLWvQ+MVPxLVqpwCd0cFsWbJxlCim2TlCo1JvN5WaPdPvSpUdEnkJ/X+mPGcq5RJ68EK8g== -deep-extend@~0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.1.tgz#efe4113d08085f4e6f9687759810f807469e2253" - integrity sha1-7+QRPQgIX05vlod1mBD4B0aeIlM= +deep-extend@~0.6.0: + version "0.6.0" + resolved "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz" + integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== deep-is@~0.1.3: version "0.1.3" - resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" - integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= + resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz" + integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= sha512-GtxAN4HvBachZzm4OnWqc45ESpUCMwkYcsjnsPs23FwJbsO+k4t0k9bQCgOmzIlpHO28+WPK/KRbRk0DDHuuDw== deep-strict-equal@^0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/deep-strict-equal/-/deep-strict-equal-0.2.0.tgz#4a078147a8ab57f6a0d4f5547243cd22f44eb4e4" - integrity sha1-SgeBR6irV/ag1PVUckPNIvROtOQ= + resolved "https://registry.npmjs.org/deep-strict-equal/-/deep-strict-equal-0.2.0.tgz" + integrity sha1-SgeBR6irV/ag1PVUckPNIvROtOQ= sha512-3daSWyvZ/zwJvuMGlzG1O+Ow0YSadGfb3jsh9xoCutv2tWyB9dA4YvR9L9/fSdDZa2dByYQe+TqapSGUrjnkoA== dependencies: core-assert "^0.2.0" deferred-leveldown@~0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/deferred-leveldown/-/deferred-leveldown-0.2.0.tgz#2cef1f111e1c57870d8bbb8af2650e587cd2f5b4" - integrity sha1-LO8fER4cV4cNi7uK8mUOWHzS9bQ= + resolved "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-0.2.0.tgz" + integrity sha1-LO8fER4cV4cNi7uK8mUOWHzS9bQ= sha512-+WCbb4+ez/SZ77Sdy1iadagFiVzMB89IKOBhglgnUkVxOxRWmmFsz8UDSNWh4Rhq+3wr/vMFlYj+rdEwWUDdng== dependencies: abstract-leveldown "~0.12.1" define-properties@^1.1.2: version "1.1.2" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94" - integrity sha1-g6c/L+pWmJj7c3GTyPhzyvbUXJQ= + resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz" + integrity sha1-g6c/L+pWmJj7c3GTyPhzyvbUXJQ= sha512-hpr5VSFXGamODSCN6P2zdSBY6zJT7DlcBAHiPIa2PWDvfBqJQntSK0ehUoHoS6HGeSS19dgj7E+1xOjfG3zEtQ== dependencies: foreach "^2.0.5" object-keys "^1.0.8" define-property@^0.2.5: version "0.2.5" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" - integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= + resolved "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz" + integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA== dependencies: is-descriptor "^0.1.0" define-property@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" - integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY= + resolved "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz" + integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY= sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA== dependencies: is-descriptor "^1.0.0" define-property@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" + resolved "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz" integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== dependencies: is-descriptor "^1.0.2" @@ -2549,8 +2371,8 @@ define-property@^2.0.2: del@^2.0.2: version "2.2.2" - resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8" - integrity sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag= + resolved "https://registry.npmjs.org/del/-/del-2.2.2.tgz" + integrity sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag= sha512-Z4fzpbIRjOu7lO5jCETSWoqUDVe0IPOlfugBsF6suen2LKDlVb4QZpKEM9P+buNJ4KI1eN7I083w/pbKUpsrWQ== dependencies: globby "^5.0.0" is-path-cwd "^1.0.0" @@ -2560,33 +2382,28 @@ del@^2.0.2: pinkie-promise "^2.0.0" rimraf "^2.2.8" -delayed-stream@0.0.5: - version "0.0.5" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-0.0.5.tgz#d4b1f43a93e8296dfe02694f4680bc37a313c73f" - integrity sha1-1LH0OpPoKW3+AmlPRoC8N6MTxz8= - delayed-stream@~1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= + resolved "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" + integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== -delegates@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" - integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= +delayed-stream@0.0.5: + version "0.0.5" + resolved "https://registry.npmjs.org/delayed-stream/-/delayed-stream-0.0.5.tgz" + integrity sha1-1LH0OpPoKW3+AmlPRoC8N6MTxz8= sha512-v+7uBd1pqe5YtgPacIIbZ8HuHeLFVNe4mUEyFDXL6KiqzEykjbw+5mXZXpGFgNVasdL4jWKgaKIXrEHiynN1LA== des.js@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.0.tgz#c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc" - integrity sha1-wHTS4qpqipoH29YfmhXCzYPsjsw= + resolved "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz" + integrity sha1-wHTS4qpqipoH29YfmhXCzYPsjsw= sha512-QlJHGiTiOmW4z3EO0qKwjM2Mb+EmOlBHbpC6QgTiXB913NxMKttEuV2SJ+eLA12sMKDg1N8HnncfAtYaNnU+cg== dependencies: inherits "^2.0.1" minimalistic-assert "^1.0.0" detect-indent@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-3.0.1.tgz#9dc5e5ddbceef8325764b9451b02bc6d54084f75" - integrity sha1-ncXl3bzu+DJXZLlFGwK8bVQIT3U= + resolved "https://registry.npmjs.org/detect-indent/-/detect-indent-3.0.1.tgz" + integrity sha1-ncXl3bzu+DJXZLlFGwK8bVQIT3U= sha512-xo3WP66SNbr1Eim85s/qyH0ZL8PQUwp86HWm0S1l8WnJ/zjT6T3w1nwNA0yOZeuvOemupEYvpvF6BIdYRuERJQ== dependencies: get-stdin "^4.0.1" minimist "^1.1.0" @@ -2594,25 +2411,20 @@ detect-indent@^3.0.1: detect-indent@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" - integrity sha1-920GQ1LN9Docts5hnE7jqUdd4gg= + resolved "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz" + integrity sha1-920GQ1LN9Docts5hnE7jqUdd4gg= sha512-BDKtmHlOzwI7iRuEkhzsnPoi5ypEhWAJB5RvHWe1kMr06js3uK5B3734i3ui5Yd+wOJV1cpE4JnivPD283GU/A== dependencies: repeating "^2.0.0" -detect-libc@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" - integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= - diff@3.2.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-3.2.0.tgz#c9ce393a4b7cbd0b058a725c93df299027868ff9" - integrity sha1-yc45Okt8vQsFinJck98pkCeGj/k= + resolved "https://registry.npmjs.org/diff/-/diff-3.2.0.tgz" + integrity sha1-yc45Okt8vQsFinJck98pkCeGj/k= sha512-597ykPFhtJYaXqPq6fF7Vl1fXTKgPdLOntyxpmdzUOKiYGqK7zcnbplj5088+8qJnWdzXhyeau5iVr8HVo9dgg== diffie-hellman@^5.0.0: version "5.0.2" - resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.2.tgz#b5835739270cfe26acf632099fded2a07f209e5e" - integrity sha1-tYNXOScM/ias9jIJn97SoH8gnl4= + resolved "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.2.tgz" + integrity sha1-tYNXOScM/ias9jIJn97SoH8gnl4= sha512-6bFNThpXO1MSkYrHm2SPXvfJQ3h4gChXxj5RToODJGCs7Df79q+KNJAiB71Nut2n50ZLc35NTOPVc7jYPPWwtg== dependencies: bn.js "^4.1.0" miller-rabin "^4.0.0" @@ -2620,7 +2432,7 @@ diffie-hellman@^5.0.0: dmd@^4.0.2: version "4.0.3" - resolved "https://registry.yarnpkg.com/dmd/-/dmd-4.0.3.tgz#e968b4d6b3735c3349f7a302bacb17da2a5fd9eb" + resolved "https://registry.npmjs.org/dmd/-/dmd-4.0.3.tgz" integrity sha512-qU9jcZQCxfLlTbZU1e5jROXVkTsn9q3s1FmnOPFWo9tfDol3cSt0AZREiXCsgmSaS5L/AXXQqcZiR7YjFNAL1g== dependencies: array-back "^4.0.0" @@ -2636,26 +2448,26 @@ dmd@^4.0.2: test-value "^3.0.0" walk-back "^3.0.1" -doctrine@1.2.x: - version "1.2.3" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.2.3.tgz#6aec6bbd62cf89dd498cae70c0ed9f49da873a6a" - integrity sha1-auxrvWLPid1JjK5wwO2fSdqHOmo= +doctrine@^1.2.2: + version "1.5.0" + resolved "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz" + integrity sha1-N53Ocw9hZvds76TmcHoVmwLFpvo= sha512-lsGyRuYr4/PIB0txi+Fy2xOMI2dGaTguCaotzFGkVZuKR5usKfcRWIFKNM3QNrU7hh/+w2bwTW+ZeXPK5l8uVg== dependencies: esutils "^2.0.2" isarray "^1.0.0" -doctrine@^1.2.2: - version "1.5.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" - integrity sha1-N53Ocw9hZvds76TmcHoVmwLFpvo= +doctrine@1.2.x: + version "1.2.3" + resolved "https://registry.npmjs.org/doctrine/-/doctrine-1.2.3.tgz" + integrity sha1-auxrvWLPid1JjK5wwO2fSdqHOmo= sha512-7Ggo7dQg6/2dY57eZRTypTFUDVEubAR3s9hw4qRFesPssg9Vh45BMSNbV4D6DI2PqZUFqss6dNMyM35BGBkmpg== dependencies: esutils "^2.0.2" isarray "^1.0.0" download@^4.1.2: version "4.4.3" - resolved "https://registry.yarnpkg.com/download/-/download-4.4.3.tgz#aa55fdad392d95d4b68e8c2be03e0c2aa21ba9ac" - integrity sha1-qlX9rTktldS2jowr4D4MKqIbqaw= + resolved "https://registry.npmjs.org/download/-/download-4.4.3.tgz" + integrity sha1-qlX9rTktldS2jowr4D4MKqIbqaw= sha512-yOTsksXxUQ9b/p/HA3g9L97JZThcAKq8v3+Afwhf/kIoV0spu6pOvj+OKQbyGKYAwBGqSPbO+x1pCFSg5ce9OA== dependencies: caw "^1.0.1" concat-stream "^1.4.7" @@ -2675,7 +2487,7 @@ download@^4.1.2: download@^6.0.0: version "6.2.5" - resolved "https://registry.yarnpkg.com/download/-/download-6.2.5.tgz#acd6a542e4cd0bb42ca70cfc98c9e43b07039714" + resolved "https://registry.npmjs.org/download/-/download-6.2.5.tgz" integrity sha512-DpO9K1sXAST8Cpzb7kmEhogJxymyVUd5qz/vCOSyvwtp2Klj2XcDt5YUuasgxka44SxF0q5RriKIwJmQHG2AuA== dependencies: caw "^2.0.0" @@ -2690,29 +2502,29 @@ download@^6.0.0: p-event "^1.0.0" pify "^3.0.0" -duplexer2@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.0.2.tgz#c614dcf67e2fb14995a91711e5a617e8a60a31db" - integrity sha1-xhTc9n4vsUmVqRcR5aYX6KYKMds= - dependencies: - readable-stream "~1.1.9" - duplexer2@^0.1.4, duplexer2@~0.1.0: version "0.1.4" - resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.1.4.tgz#8b12dab878c0d69e3e7891051662a32fc6bddcc1" - integrity sha1-ixLauHjA1p4+eJEFFmKjL8a93ME= + resolved "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz" + integrity sha1-ixLauHjA1p4+eJEFFmKjL8a93ME= sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA== dependencies: readable-stream "^2.0.2" +duplexer2@0.0.2: + version "0.0.2" + resolved "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz" + integrity sha1-xhTc9n4vsUmVqRcR5aYX6KYKMds= sha512-+AWBwjGadtksxjOQSFDhPNQbed7icNXApT4+2BNpsXzcCBiInq2H9XW0O8sfHFaPmnQRs7cg/P0fAr2IWQSW0g== + dependencies: + readable-stream "~1.1.9" + duplexer3@^0.1.4: version "0.1.4" - resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" - integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= + resolved "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz" + integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= sha512-CEj8FwwNA4cVH2uFCoHUrmojhYh1vmCdOaneKJXwkeY1i9jnlslVo9dx+hQ5Hl9GnH/Bwy/IjxAyOePyPKYnzA== duplexify@^3.2.0: version "3.5.0" - resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.5.0.tgz#1aa773002e1578457e9d9d4a50b0ccaaebcbd604" - integrity sha1-GqdzAC4VeEV+nZ1KULDMquvL1gQ= + resolved "https://registry.npmjs.org/duplexify/-/duplexify-3.5.0.tgz" + integrity sha1-GqdzAC4VeEV+nZ1KULDMquvL1gQ= sha512-jaMUeJmcDn5ho+ws4qjt879wpzd7nnapS1EroKM5NZHmd9m2i0NQOpFEkgcTleeDj+CmU9Uh/X1Mqs/+fvPURg== dependencies: end-of-stream "1.0.0" inherits "^2.0.1" @@ -2721,23 +2533,23 @@ duplexify@^3.2.0: each-async@^1.0.0: version "1.1.1" - resolved "https://registry.yarnpkg.com/each-async/-/each-async-1.1.1.tgz#dee5229bdf0ab6ba2012a395e1b869abf8813473" - integrity sha1-3uUim98KtrogEqOV4bhpq/iBNHM= + resolved "https://registry.npmjs.org/each-async/-/each-async-1.1.1.tgz" + integrity sha1-3uUim98KtrogEqOV4bhpq/iBNHM= sha512-0hJGub96skwr+sUojv7zQ0kc9i4jn3SwLiLk8Jr7KDz7aaaMzkN5UX3a/9ZhzC0OfZVyXHhlHcjC0KVOiKZ+HQ== dependencies: onetime "^1.0.0" set-immediate-shim "^1.0.0" ecc-jsbn@~0.1.1: version "0.1.2" - resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" - integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= + resolved "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz" + integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw== dependencies: jsbn "~0.1.0" safer-buffer "^2.1.0" ecstatic@^2.0.0: version "2.2.1" - resolved "https://registry.yarnpkg.com/ecstatic/-/ecstatic-2.2.1.tgz#b5087fad439dd9dd49d31e18131454817fe87769" + resolved "https://registry.npmjs.org/ecstatic/-/ecstatic-2.2.1.tgz" integrity sha512-ztE4WqheoWLh3wv+HQwy7dACnvNY620coWpa+XqY6R2cVWgaAT2lUISU1Uf7JpdLLJCURktJOaA9av2AOzsyYQ== dependencies: he "^1.1.1" @@ -2745,20 +2557,15 @@ ecstatic@^2.0.0: minimist "^1.1.0" url-join "^2.0.2" -electron-to-chromium@^1.3.18: - version "1.3.21" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.21.tgz#a967ebdcfe8ed0083fc244d1894022a8e8113ea2" - integrity sha1-qWfr3P6O0Ag/wkTRiUAiqOgRPqI= - -electron-to-chromium@^1.3.811: +electron-to-chromium@^1.3.18, electron-to-chromium@^1.3.811: version "1.3.823" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.823.tgz#ebcc606e6e0c08f92e553276711dc30a7ea43c02" + resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.823.tgz" integrity sha512-jbwqBmqo9ZBWNfz6EKDTx66rqRDt87ZbOxtUegYNpkVMX6z93PMaFbDy7/LIPRwMI/5T4GVcYkROWDPQm9Ni7A== elliptic@^6.0.0: version "6.4.0" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.0.tgz#cac9af8762c85836187003c8dfe193e5e2eae5df" - integrity sha1-ysmvh2LIWDYYcAPI3+GT5eLq5d8= + resolved "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz" + integrity sha1-ysmvh2LIWDYYcAPI3+GT5eLq5d8= sha512-s8oifyiQMQi+n/gJuw37WK3D1aVOWIgj59+DBsg48eJPo34QZWl2cl9kL4SI/W94/AdMFAyXG+QnSzbXQ+iJ1w== dependencies: bn.js "^4.4.0" brorand "^1.0.1" @@ -2770,62 +2577,62 @@ elliptic@^6.0.0: encoding@^0.1.11: version "0.1.12" - resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" - integrity sha1-U4tm8+5izRq1HsMjgp0flIDHS+s= + resolved "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz" + integrity sha1-U4tm8+5izRq1HsMjgp0flIDHS+s= sha512-bl1LAgiQc4ZWr++pNYUdRe/alecaHFeHxIJ/pNciqGdKXghaTCOwKkbKp6ye7pKZGu/GcaSXFk8PBVhgs+dJdA== dependencies: iconv-lite "~0.4.13" -end-of-stream@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.0.0.tgz#d4596e702734a93e40e9af864319eabd99ff2f0e" - integrity sha1-1FlucCc0qT5A6a+GQxnqvZn/Lw4= - dependencies: - once "~1.3.0" - end-of-stream@^1.0.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.0.tgz#7a90d833efda6cfa6eac0f4949dbb0fad3a63206" - integrity sha1-epDYM+/abPpurA9JSduw+tOmMgY= + resolved "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.0.tgz" + integrity sha1-epDYM+/abPpurA9JSduw+tOmMgY= sha512-NOyFg46+wLQq7Rmn+5cgC74jwx5L0beaaabXs2qMNbGM2gl2w27jwWEyN94CU/YRndlua/PZJ5MYz1cjP4y3VQ== dependencies: once "^1.4.0" +end-of-stream@1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.0.0.tgz" + integrity sha1-1FlucCc0qT5A6a+GQxnqvZn/Lw4= sha512-oniaMOoG/dtbvWRLAlkFeJeJPM4IeE6BPFCHv0GTIIONB7A7kz1/liYWQiU7bqAhUlrKy1Z1MBsKa+qBgoVabw== + dependencies: + once "~1.3.0" + enhance-visitors@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/enhance-visitors/-/enhance-visitors-1.0.0.tgz#aa945d05da465672a1ebd38fee2ed3da8518e95a" - integrity sha1-qpRdBdpGVnKh69OP7i7T2oUY6Vo= + resolved "https://registry.npmjs.org/enhance-visitors/-/enhance-visitors-1.0.0.tgz" + integrity sha1-qpRdBdpGVnKh69OP7i7T2oUY6Vo= sha512-+29eJLiUixTEDRaZ35Vu8jP3gPLNcQQkQkOQjLp2X+6cZGGPDD/uasbFzvLsJKnGZnvmyZ0srxudwOtskHeIDA== dependencies: lodash "^4.13.1" entities@~1.1.1: version "1.1.2" - resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" + resolved "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz" integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== errno@^0.1.1, errno@~0.1.1: version "0.1.4" - resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.4.tgz#b896e23a9e5e8ba33871fc996abd3635fc9a1c7d" - integrity sha1-uJbiOp5ei6M4cfyZar02NfyaHH0= + resolved "https://registry.npmjs.org/errno/-/errno-0.1.4.tgz" + integrity sha1-uJbiOp5ei6M4cfyZar02NfyaHH0= sha512-B6ww/BgkeBIfyIaOKPMW2zteXdAeXSfOTPv6kGhl3luYw4BOTopQ0EjdGFePGdajvBjLQZq12axGLtHnrp+/Pg== dependencies: prr "~0.0.0" error-ex@^1.2.0: version "1.3.1" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc" - integrity sha1-+FWobOYa3E6GIcPNoh56dhLDqNw= + resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz" + integrity sha1-+FWobOYa3E6GIcPNoh56dhLDqNw= sha512-FfmVxYsm1QOFoPI2xQmNnEH10Af42mCxtGrKvS1JfDTXlPLYiAz2T+QpjHPxf+OGniMfWZah9ULAhPoKQ3SEqg== dependencies: is-arrayish "^0.2.1" error@^7.0.0: version "7.0.2" - resolved "https://registry.yarnpkg.com/error/-/error-7.0.2.tgz#a5f75fff4d9926126ddac0ea5dc38e689153cb02" - integrity sha1-pfdf/02ZJhJt2sDqXcOOaJFTywI= + resolved "https://registry.npmjs.org/error/-/error-7.0.2.tgz" + integrity sha1-pfdf/02ZJhJt2sDqXcOOaJFTywI= sha512-UtVv4l5MhijsYUxPJo4390gzfZvAnTHreNnDjnTZaKIiZ/SemXxAhBkYSKtWa5RtBXbLP8tMgn/n0RUa/H7jXw== dependencies: string-template "~0.2.1" xtend "~4.0.0" es-abstract@^1.5.1: version "1.10.0" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.10.0.tgz#1ecb36c197842a00d8ee4c2dfd8646bb97d60864" + resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.10.0.tgz" integrity sha512-/uh/DhdqIOSkAWifU+8nG78vlQxdLckUdI/sPgy0VhuXi2qJ7T8czBmqIYtLQVpCIFYafChnsRsB5pyb1JdmCQ== dependencies: es-to-primitive "^1.1.1" @@ -2836,8 +2643,8 @@ es-abstract@^1.5.1: es-to-primitive@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.1.1.tgz#45355248a88979034b6792e19bb81f2b7975dd0d" - integrity sha1-RTVSSKiJeQNLZ5Lhm7gfK3l13Q0= + resolved "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.1.1.tgz" + integrity sha1-RTVSSKiJeQNLZ5Lhm7gfK3l13Q0= sha512-wXsac552n5sYhgVjyFvhXLunXZFPOiT/WgP7hFhUPU5gtaUQpm9OryPwlWQUS3Qptk8iZzY/2T3J62GtC/toSw== dependencies: is-callable "^1.1.1" is-date-object "^1.0.1" @@ -2845,16 +2652,16 @@ es-to-primitive@^1.1.1: es5-ext@^0.10.14, es5-ext@^0.10.9, es5-ext@~0.10.14: version "0.10.15" - resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.15.tgz#c330a5934c1ee21284a7c081a86e5fd937c91ea6" - integrity sha1-wzClk0we4hKEp8CBqG5f2TfJHqY= + resolved "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.15.tgz" + integrity sha1-wzClk0we4hKEp8CBqG5f2TfJHqY= sha512-zZfaTZ/LLZHEWH0haI1803NG/v6wRarLqig38LO+5+Ud9VsbZSKau4tlvDoAJRfN0zzIKbPCgmFyyP+LBKTeaA== dependencies: es6-iterator "2" es6-symbol "~3.1" -es6-iterator@2, es6-iterator@^2.0.1, es6-iterator@~2.0.1: +es6-iterator@^2.0.1, es6-iterator@~2.0.1, es6-iterator@2: version "2.0.1" - resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.1.tgz#8e319c9f0453bf575d374940a655920e59ca5512" - integrity sha1-jjGcnwRTv1ddN0lAplWSDlnKVRI= + resolved "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.1.tgz" + integrity sha1-jjGcnwRTv1ddN0lAplWSDlnKVRI= sha512-6QdxKjEfkAutL86ORbUgbZjfmssn3hfrFZDz5utw2BH9EJWYCVVqn9dN/WvsWSzsZ7Ox/fMrHXexX96fF5vEsw== dependencies: d "1" es5-ext "^0.10.14" @@ -2862,8 +2669,8 @@ es6-iterator@2, es6-iterator@^2.0.1, es6-iterator@~2.0.1: es6-map@^0.1.3: version "0.1.5" - resolved "https://registry.yarnpkg.com/es6-map/-/es6-map-0.1.5.tgz#9136e0503dcc06a301690f0bb14ff4e364e949f0" - integrity sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA= + resolved "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz" + integrity sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA= sha512-mz3UqCh0uPCIqsw1SSAkB/p0rOzF/M0V++vyN7JqlPtSW/VsYgQBvVvqMLmfBuyMzTpLnNqi6JmcSizs4jy19A== dependencies: d "1" es5-ext "~0.10.14" @@ -2874,8 +2681,8 @@ es6-map@^0.1.3: es6-set@^0.1.4, es6-set@~0.1.5: version "0.1.5" - resolved "https://registry.yarnpkg.com/es6-set/-/es6-set-0.1.5.tgz#d2b3ec5d4d800ced818db538d28974db0a73ccb1" - integrity sha1-0rPsXU2ADO2BjbU40ol02wpzzLE= + resolved "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz" + integrity sha1-0rPsXU2ADO2BjbU40ol02wpzzLE= sha512-7S8YXIcUfPMOr3rqJBVMePAbRsD1nWeSMQ86K/lDI76S3WKXz+KWILvTIPbTroubOkZTGh+b+7/xIIphZXNYbA== dependencies: d "1" es5-ext "~0.10.14" @@ -2883,18 +2690,18 @@ es6-set@^0.1.4, es6-set@~0.1.5: es6-symbol "3.1.1" event-emitter "~0.3.5" -es6-symbol@3.1.1, es6-symbol@^3.1, es6-symbol@^3.1.1, es6-symbol@~3.1, es6-symbol@~3.1.1: +es6-symbol@^3.1, es6-symbol@^3.1.1, es6-symbol@~3.1, es6-symbol@~3.1.1, es6-symbol@3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.1.tgz#bf00ef4fdab6ba1b46ecb7b629b4c7ed5715cc77" - integrity sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc= + resolved "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz" + integrity sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc= sha512-exfuQY8UGtn/N+gL1iKkH8fpNd5sJ760nJq6mmZAHldfxMD5kX07lbQuYlspoXsuknXNv9Fb7y2GsPOnQIbxHg== dependencies: d "1" es5-ext "~0.10.14" es6-weak-map@^2.0.1: version "2.0.2" - resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.2.tgz#5e3ab32251ffd1538a1f8e5ffa1357772f92d96f" - integrity sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8= + resolved "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz" + integrity sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8= sha512-rx4zGKCKP7e3n3BtHemBtuJ9DCFw5jfjtdSM132RsGxlBgJvudmL/ogowl2Je/dJDbGws+od3J3PHOTAleo27w== dependencies: d "1" es5-ext "^0.10.14" @@ -2903,23 +2710,23 @@ es6-weak-map@^2.0.1: escalade@^3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" + resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz" integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== -escape-string-regexp@1.0.5, escape-string-regexp@^1.0.0, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: +escape-string-regexp@^1.0.0, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5, escape-string-regexp@1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" + integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== escape-string-regexp@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz" integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== escope@^3.6.0: version "3.6.0" - resolved "https://registry.yarnpkg.com/escope/-/escope-3.6.0.tgz#e01975e812781a163a6dadfdd80398dc64c889c3" - integrity sha1-4Bl16BJ4GhY6ba392AOY3GTIicM= + resolved "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz" + integrity sha1-4Bl16BJ4GhY6ba392AOY3GTIicM= sha512-75IUQsusDdalQEW/G/2esa87J7raqdJF+Ca0/Xm5C3Q58Nr4yVYjZGp/P1+2xiEVgXRrA39dpRb8LcshajbqDQ== dependencies: es6-map "^0.1.3" es6-weak-map "^2.0.1" @@ -2928,8 +2735,8 @@ escope@^3.6.0: eslint-import-resolver-node@^0.2.0: version "0.2.3" - resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.2.3.tgz#5add8106e8c928db2cba232bcd9efa846e3da16c" - integrity sha1-Wt2BBujJKNssuiMrzZ76hG49oWw= + resolved "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.2.3.tgz" + integrity sha1-Wt2BBujJKNssuiMrzZ76hG49oWw= sha512-HI8ShtDIy7gON76Nr3bu4zl0DuCLPo1Fud9P2lltOQKeiAS2r5/o/l3y+V8HJ1cDLFSz+tHu7/V9fI5jirwlbw== dependencies: debug "^2.2.0" object-assign "^4.0.1" @@ -2937,8 +2744,8 @@ eslint-import-resolver-node@^0.2.0: eslint-plugin-ava@3.0.x: version "3.0.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-ava/-/eslint-plugin-ava-3.0.0.tgz#ddb5fc7280d79663aacf72bf77987e18d54e57e9" - integrity sha1-3bX8coDXlmOqz3K/d5h+GNVOV+k= + resolved "https://registry.npmjs.org/eslint-plugin-ava/-/eslint-plugin-ava-3.0.0.tgz" + integrity sha1-3bX8coDXlmOqz3K/d5h+GNVOV+k= sha512-+IbCNoMMm71OAFkiFF/OlRGkBah/5IFxKxFGw1i/irXrjdSFRRWtRRfhSnN+l2BfVy9CyYHdOt0j9ZlCcdPF6g== dependencies: arrify "^1.0.1" deep-strict-equal "^0.2.0" @@ -2951,25 +2758,25 @@ eslint-plugin-ava@3.0.x: eslint-plugin-babel@3.3.x: version "3.3.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-babel/-/eslint-plugin-babel-3.3.0.tgz#2f494aedcf6f4aa4e75b9155980837bc1fbde193" - integrity sha1-L0lK7c9vSqTnW5FVmAg3vB+94ZM= + resolved "https://registry.npmjs.org/eslint-plugin-babel/-/eslint-plugin-babel-3.3.0.tgz" + integrity sha1-L0lK7c9vSqTnW5FVmAg3vB+94ZM= sha512-Zg2ztRQF4LN5zjVAPJCwLT+661DEKQL/eXx29gMfZjLDtX/g03RUHTmdAGj7qnyfZPHnxyf6YryoKjthVhaN0g== eslint-plugin-chai-expect@1.1.x: version "1.1.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-chai-expect/-/eslint-plugin-chai-expect-1.1.1.tgz#cd640b8b38cf6c3abcc378673b7b173b99ddc70a" - integrity sha1-zWQLizjPbDq8w3hnO3sXO5ndxwo= + resolved "https://registry.npmjs.org/eslint-plugin-chai-expect/-/eslint-plugin-chai-expect-1.1.1.tgz" + integrity sha1-zWQLizjPbDq8w3hnO3sXO5ndxwo= sha512-KIPuFV2mb1CuFtOVfVN+uUKvkWDLi5rt3aM1mqeumew0iPLHSpahJxl9CmUkI+PzJNnnxj33E0CA20NBhN25VA== eslint-plugin-flowtype@2.7.x: version "2.7.2" - resolved "https://registry.yarnpkg.com/eslint-plugin-flowtype/-/eslint-plugin-flowtype-2.7.2.tgz#acd0841fd2c55f86b69f54ce93234d0bd87894a9" - integrity sha1-rNCEH9LFX4a2n1TOkyNNC9h4lKk= + resolved "https://registry.npmjs.org/eslint-plugin-flowtype/-/eslint-plugin-flowtype-2.7.2.tgz" + integrity sha1-rNCEH9LFX4a2n1TOkyNNC9h4lKk= sha512-50ysd9+W9nrogfZIhGAuv389HHSTfLclgqH+GuTMrhLHz6nfzMcrps/4Ty2556NOlK9qt1CA5ttchpQSPLVcdw== dependencies: lodash "^4.9.0" eslint-plugin-import@1.13.x: version "1.13.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-1.13.0.tgz#0e89ed868396d09122e307edf6db37881cfdddd7" - integrity sha1-DonthoOW0JEi4wft9ts3iBz93dc= + resolved "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-1.13.0.tgz" + integrity sha1-DonthoOW0JEi4wft9ts3iBz93dc= sha512-s96YxECX9qB1UYsWUI7jL71Dc8EWo4Q7jaC4AmIPeqv5QpTE8cqIPxRQg77RuDBVIUndxrV8KjajVkXbYW2vqg== dependencies: builtin-modules "^1.1.1" contains-path "^0.1.0" @@ -2988,8 +2795,8 @@ eslint-plugin-import@1.13.x: eslint-plugin-jsx-a11y@2.1.x: version "2.1.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-2.1.0.tgz#759524b8d7161d849a77a91735a3974dd1cfc32b" - integrity sha1-dZUkuNcWHYSad6kXNaOXTdHPwys= + resolved "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-2.1.0.tgz" + integrity sha1-dZUkuNcWHYSad6kXNaOXTdHPwys= sha512-RRCuQt2r6Vqg8OBrn5gjV8ONAcUxwFahwuy6jkWfXsCjArCEyvCFs16bFKUgyZyHi/qFov588C44N0DEAy8XvQ== dependencies: damerau-levenshtein "^1.0.0" jsx-ast-utils "^1.0.0" @@ -2997,22 +2804,22 @@ eslint-plugin-jsx-a11y@2.1.x: eslint-plugin-lodash@1.10.x: version "1.10.3" - resolved "https://registry.yarnpkg.com/eslint-plugin-lodash/-/eslint-plugin-lodash-1.10.3.tgz#a341e3386b6eb4e4b7addcf43c3a7f944f38551d" - integrity sha1-o0HjOGtutOS3rdz0PDp/lE84VR0= + resolved "https://registry.npmjs.org/eslint-plugin-lodash/-/eslint-plugin-lodash-1.10.3.tgz" + integrity sha1-o0HjOGtutOS3rdz0PDp/lE84VR0= sha512-U+SMug9RV2PpO2kU6oOFAOCdhsbOo9oiuMQy9GU7HVBd7njrLamD8WYGOr045wUjLJ8VlrXxkVeRAZrxn1FHZA== dependencies: lodash "^4.9.0" eslint-plugin-mocha@4.3.x: version "4.3.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-mocha/-/eslint-plugin-mocha-4.3.0.tgz#84075b96fc37fe967d29b86022853a14ff252cc3" - integrity sha1-hAdblvw3/pZ9KbhgIoU6FP8lLMM= + resolved "https://registry.npmjs.org/eslint-plugin-mocha/-/eslint-plugin-mocha-4.3.0.tgz" + integrity sha1-hAdblvw3/pZ9KbhgIoU6FP8lLMM= sha512-2If+ANc2M/BD02EvMIYdv0efc5pLo7UbKja6GeI8+QOeZv/6tGmOG+TzHTsPE8aJhi1x36ySWCJQFAaBkM18Zg== dependencies: ramda "^0.21.0" eslint-plugin-node@2.0.x: version "2.0.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-2.0.0.tgz#d49dc427cedc0df436238cdcb06acd961fa38de5" - integrity sha1-1J3EJ87cDfQ2I4zcsGrNlh+jjeU= + resolved "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-2.0.0.tgz" + integrity sha1-1J3EJ87cDfQ2I4zcsGrNlh+jjeU= sha512-TKVI6c317pLfGsZgqJ01dfx7r15fE22EWiaAgk9CsLOxANx11nGedvyvITgIYZEOJGAQFWTmL7i4wBEx+wfLMw== dependencies: ignore "^3.0.11" minimatch "^3.0.2" @@ -3022,21 +2829,21 @@ eslint-plugin-node@2.0.x: eslint-plugin-promise@2.0.x: version "2.0.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-2.0.1.tgz#a9759cefa5e38ab11bb2ef65a04ef042309aa0a4" - integrity sha1-qXWc76XjirEbsu9loE7wQjCaoKQ= + resolved "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-2.0.1.tgz" + integrity sha1-qXWc76XjirEbsu9loE7wQjCaoKQ= sha512-t2BXbC67WDujbhlM5Ga5V3a7I1ehBQ0j9bVjl0u6c6VN+dOXPhdPCH9Citkd259/fhA4tZQswyMpWTuL5UIl1g== eslint-plugin-react@6.1.x: version "6.1.2" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-6.1.2.tgz#d6022bd9bce448e517a003abc6409e7ca1800c68" - integrity sha1-1gIr2bzkSOUXoAOrxkCefKGADGg= + resolved "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-6.1.2.tgz" + integrity sha1-1gIr2bzkSOUXoAOrxkCefKGADGg= sha512-7FiDKzDw2vxnYGD++a9u+Gokrx1q/+nS0ncy3InCabr1XKEvbRPxnw9EjNx5fkKVJxXfh+sxQTVBlVY7ZtSjxw== dependencies: doctrine "^1.2.2" jsx-ast-utils "^1.3.1" eslint-plugin-shopify@14.0.0: version "14.0.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-shopify/-/eslint-plugin-shopify-14.0.0.tgz#4aa6ca872377c729e510a6704a9180f0ed3a0f6f" - integrity sha1-SqbKhyN3xynlEKZwSpGA8O06D28= + resolved "https://registry.npmjs.org/eslint-plugin-shopify/-/eslint-plugin-shopify-14.0.0.tgz" + integrity sha1-SqbKhyN3xynlEKZwSpGA8O06D28= sha512-bykaAG1r8uNznxq7kaG5uSQ3JRHlcPId3KEP5/WTonhl0/9llqq4BgqxNRAsN/LwqLscMD8PbjUN2gum7bCXsQ== dependencies: babel-eslint "6.1.x" eslint-plugin-ava "3.0.x" @@ -3055,13 +2862,13 @@ eslint-plugin-shopify@14.0.0: eslint-plugin-sort-class-members@1.0.x: version "1.0.2" - resolved "https://registry.yarnpkg.com/eslint-plugin-sort-class-members/-/eslint-plugin-sort-class-members-1.0.2.tgz#b2f74c47d5a4940c541eb573c5bc2ae1cb778610" - integrity sha1-svdMR9WklAxUHrVzxbwq4ct3hhA= + resolved "https://registry.npmjs.org/eslint-plugin-sort-class-members/-/eslint-plugin-sort-class-members-1.0.2.tgz" + integrity sha1-svdMR9WklAxUHrVzxbwq4ct3hhA= sha512-LUXnrK8Itknf2osGWWmCShoL1MUgHrMZSolpUtAQd+kqnXD+xj1EUHGm3ftE3YLgNWFCGSLgf4SYWamFBFBiIw== eslint-test-generator@1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/eslint-test-generator/-/eslint-test-generator-1.0.5.tgz#f8a2a280e8fffbd2d550e53d68079772daeff8e3" - integrity sha1-+KKigOj/+9LVUOU9aAeXctrv+OM= + resolved "https://registry.npmjs.org/eslint-test-generator/-/eslint-test-generator-1.0.5.tgz" + integrity sha1-+KKigOj/+9LVUOU9aAeXctrv+OM= sha512-CsMzH+IKWml44dl+CuEm5k858eILwR5B+k60wD6vV/XUke1k3o7j4TTDYifSLkgMQW6b+++LKd+xmLaJjeMo0g== dependencies: eslint "3.3.x" glob "^7.0.5" @@ -3070,8 +2877,8 @@ eslint-test-generator@1.0.5: eslint@3.3.x: version "3.3.1" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-3.3.1.tgz#ed4ba34be175e2286c90a42ff636bf5e26d50968" - integrity sha1-7UujS+F14ihskKQv9ja/XibVCWg= + resolved "https://registry.npmjs.org/eslint/-/eslint-3.3.1.tgz" + integrity sha1-7UujS+F14ihskKQv9ja/XibVCWg= sha512-/9SjGP30BzhOmYo1dtuoFYIyAL25jq8xNlXvL2w6UYWbrn0ca+daecGwS5ORhQ4qz8MTJKR2gM5KeLUiIlMzIQ== dependencies: chalk "^1.1.3" concat-stream "^1.4.6" @@ -3109,8 +2916,8 @@ eslint@3.3.x: eslint@3.8.1: version "3.8.1" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-3.8.1.tgz#7d02db44cd5aaf4fa7aa489e1f083baa454342ba" - integrity sha1-fQLbRM1ar0+nqkieHwg7qkVDQro= + resolved "https://registry.npmjs.org/eslint/-/eslint-3.8.1.tgz" + integrity sha1-fQLbRM1ar0+nqkieHwg7qkVDQro= sha512-FThxRC3I2A40ObKb3BRD20jjtB2UBGWrNMwyFGUFSrIxI3ZzhxM2s6jarkxOkQAaRmiwB1yf+0fF8CrPpwi8hA== dependencies: chalk "^1.1.3" concat-stream "^1.4.6" @@ -3148,111 +2955,106 @@ eslint@3.8.1: espree@^3.1.3, espree@^3.1.6, espree@^3.3.1: version "3.4.0" - resolved "https://registry.yarnpkg.com/espree/-/espree-3.4.0.tgz#41656fa5628e042878025ef467e78f125cb86e1d" - integrity sha1-QWVvpWKOBCh4Al70Z+ePEly4bh0= + resolved "https://registry.npmjs.org/espree/-/espree-3.4.0.tgz" + integrity sha1-QWVvpWKOBCh4Al70Z+ePEly4bh0= sha512-iu/XZszpgK9KWSpPDxpojYGHsjkDyhzPmVE5hNP+woJ4sHU0McbJQkHvw15i2qGoRXfErFWMWp7gxHjtYCN8Jg== dependencies: acorn "4.0.4" acorn-jsx "^3.0.0" esprima@^3.1.1: version "3.1.3" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" - integrity sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM= + resolved "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz" + integrity sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM= sha512-AWwVMNxwhN8+NIPQzAQZCm7RkLC4RbM3B1OobMuyp3i+w73X57KCKaVIxaRZb+DYCojq7rspo+fmuQfAboyhFg== espurify@^1.5.0: version "1.7.0" - resolved "https://registry.yarnpkg.com/espurify/-/espurify-1.7.0.tgz#1c5cf6cbccc32e6f639380bd4f991fab9ba9d226" - integrity sha1-HFz2y8zDLm9jk4C9T5kfq5up0iY= + resolved "https://registry.npmjs.org/espurify/-/espurify-1.7.0.tgz" + integrity sha1-HFz2y8zDLm9jk4C9T5kfq5up0iY= sha512-0JSWD7qFEX0xwUrw43rUtGZFVWCUrg0NXVEXgv92EEMum1XPL0Zte8Mb2OGRPoMOSf+g+Fcqv9Q0zEWEpykGEg== dependencies: core-js "^2.0.0" esrecurse@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.1.0.tgz#4713b6536adf7f2ac4f327d559e7756bff648220" - integrity sha1-RxO2U2rffyrE8yfVWed1a/9kgiA= + resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.1.0.tgz" + integrity sha1-RxO2U2rffyrE8yfVWed1a/9kgiA= sha512-4pWjwT+t5yO1v2/nV29A6IUpV7I78jR6mmZhhM/65pPV3ZZZQ5f1j354Mt5XzhDH0bqB3oDfF0BA2RPOY/NxBg== dependencies: estraverse "~4.1.0" object-assign "^4.0.1" estraverse@^4.1.1, estraverse@^4.2.0: version "4.2.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" - integrity sha1-De4/7TH81GlhjOc0IJn8GvoL2xM= + resolved "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz" + integrity sha1-De4/7TH81GlhjOc0IJn8GvoL2xM= sha512-VHvyaGnJy+FuGfcfaM7W7OZw4mQiKW73jPHwQXx2VnMSUBajYmytOT5sKEfsBvNPtGX6YDwcrGDz2eocoHg0JA== estraverse@~4.1.0: version "4.1.1" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.1.1.tgz#f6caca728933a850ef90661d0e17982ba47111a2" - integrity sha1-9srKcokzqFDvkGYdDheYK6RxEaI= + resolved "https://registry.npmjs.org/estraverse/-/estraverse-4.1.1.tgz" + integrity sha1-9srKcokzqFDvkGYdDheYK6RxEaI= sha512-r3gEa6vc6lGQdrXfo834EaaqnOzYmik8JPg8VB95acIMZRjqaHI0/WMZFoMBGPtS+HCgylwTLoc4Y5yl0owOHQ== estree-walker@^0.2.1: version "0.2.1" - resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.2.1.tgz#bdafe8095383d8414d5dc2ecf4c9173b6db9412e" - integrity sha1-va/oCVOD2EFNXcLs9MkXO225QS4= + resolved "https://registry.npmjs.org/estree-walker/-/estree-walker-0.2.1.tgz" + integrity sha1-va/oCVOD2EFNXcLs9MkXO225QS4= sha512-6/I1dwNKk0N9iGOU3ydzAAurz4NPo/ttxZNCqgIVbWFvWyzWBSNonRrJ5CpjDuyBfmM7ENN7WCzUi9aT/UPXXQ== estree-walker@^0.3.0: version "0.3.1" - resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.3.1.tgz#e6b1a51cf7292524e7237c312e5fe6660c1ce1aa" - integrity sha1-5rGlHPcpJSTnI3wxLl/mZgwc4ao= - -estree-walker@^0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.5.2.tgz#d3850be7529c9580d815600b53126515e146dd39" - integrity sha512-XpCnW/AE10ws/kDAs37cngSkvgIR8aN3G0MS85m7dUpuK2EREo9VJ00uvw6Dg/hXEpfsE1I1TvJOJr+Z+TL+ig== + resolved "https://registry.npmjs.org/estree-walker/-/estree-walker-0.3.1.tgz" + integrity sha1-5rGlHPcpJSTnI3wxLl/mZgwc4ao= sha512-a0V2EAQrmcBKl/RLr5Cu3qZBHC9tuWifbAXezwNLUCuHndgoEAakTenYcESK84nF123BOjKXi33kFc3z4F+Lkw== esutils@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" - integrity sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs= + resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz" + integrity sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs= sha512-UUPPULqkyAV+M3Shodis7l8D+IyX6V8SbaBnTb449jf3fMTd8+UOZI1Q70NbZVOQkcR91yYgdHsJiMMMVmYshg== event-emitter@~0.3.5: version "0.3.5" - resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" - integrity sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk= + resolved "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz" + integrity sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk= sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA== dependencies: d "1" es5-ext "~0.10.14" eventemitter3@1.x.x: version "1.2.0" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-1.2.0.tgz#1c86991d816ad1e504750e73874224ecf3bec508" - integrity sha1-HIaZHYFq0eUEdQ5zh0Ik7PO+xQg= + resolved "https://registry.npmjs.org/eventemitter3/-/eventemitter3-1.2.0.tgz" + integrity sha1-HIaZHYFq0eUEdQ5zh0Ik7PO+xQg= sha512-DOFqA1MF46fmZl2xtzXR3MPCRsXqgoFqdXcrCVYM3JNnfUeHTm/fh/v/iU7gBFpwkuBmoJPAm5GuhdDfSEJMJA== events@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" - integrity sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ= + resolved "https://registry.npmjs.org/events/-/events-1.1.1.tgz" + integrity sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ= sha512-kEcvvCBByWXGnZy6JUlgAp2gBIUjfCAV6P6TgT1/aaQKcmuAEC4OZTV1I4EWQLz2gxZw76atuVyvHhTxvi0Flw== evp_bytestokey@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.0.tgz#497b66ad9fef65cd7c08a6180824ba1476b66e53" - integrity sha1-SXtmrZ/vZc18CKYYCCS6FHa2blM= + resolved "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.0.tgz" + integrity sha1-SXtmrZ/vZc18CKYYCCS6FHa2blM= sha512-ALeH0LCygUuJllS9VdUF1JLBxD37VHyxlFonQixBbQQLcO50OV2vIqPb1fRSz5WDv8aqTAnK9EMGGiF4fE6ToA== dependencies: create-hash "^1.1.1" exec-series@^1.0.0: version "1.0.3" - resolved "https://registry.yarnpkg.com/exec-series/-/exec-series-1.0.3.tgz#6d257a9beac482a872c7783bc8615839fc77143a" - integrity sha1-bSV6m+rEgqhyx3g7yGFYOfx3FDo= + resolved "https://registry.npmjs.org/exec-series/-/exec-series-1.0.3.tgz" + integrity sha1-bSV6m+rEgqhyx3g7yGFYOfx3FDo= sha512-VkmGmKa4oWkVBcPPfSzOEmry9ELWKk4oodvXpmtYmvGD82k/TnT0CGNw9VoxQLYGwNJR6fIaXpHUhBm4tNTSMQ== dependencies: async-each-series "^1.1.0" object-assign "^4.1.0" exit-hook@^1.0.0: version "1.1.1" - resolved "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8" - integrity sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g= + resolved "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz" + integrity sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g= sha512-MsG3prOVw1WtLXAZbM3KiYtooKR1LvxHh3VHsVtIy0uiUu8usxgB/94DP2HxtD/661lLdB6yzQ09lGJSQr6nkg== expand-brackets@^0.1.4: version "0.1.5" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" - integrity sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s= + resolved "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz" + integrity sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s= sha512-hxx03P2dJxss6ceIeri9cmYOT4SRs3Zk3afZwWpOsRqLqprhTR8u++SlC+sFGsQr7WGFPdMF7Gjc1njDLDK6UA== dependencies: is-posix-bracket "^0.1.0" expand-brackets@^2.1.4: version "2.1.4" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" - integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI= + resolved "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz" + integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI= sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA== dependencies: debug "^2.3.3" define-property "^0.2.5" @@ -3264,33 +3066,33 @@ expand-brackets@^2.1.4: expand-range@^1.8.1: version "1.8.2" - resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" - integrity sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc= + resolved "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz" + integrity sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc= sha512-AFASGfIlnIbkKPQwX1yHaDjFvh/1gyKJODme52V6IORh69uEYgZp0o9C+qsIGNVEiuuhQU0CSSl++Rlegg1qvA== dependencies: fill-range "^2.1.0" expand-tilde@^1.2.2: version "1.2.2" - resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-1.2.2.tgz#0b81eba897e5a3d31d1c3d102f8f01441e559449" - integrity sha1-C4HrqJflo9MdHD0QL48BRB5VlEk= + resolved "https://registry.npmjs.org/expand-tilde/-/expand-tilde-1.2.2.tgz" + integrity sha1-C4HrqJflo9MdHD0QL48BRB5VlEk= sha512-rtmc+cjLZqnu9dSYosX9EWmSJhTwpACgJQTfj4hgg2JjOD/6SIQalZrt4a3aQeh++oNxkazcaxrhPUj6+g5G/Q== dependencies: os-homedir "^1.0.1" expect.js@0.3.1: version "0.3.1" - resolved "https://registry.yarnpkg.com/expect.js/-/expect.js-0.3.1.tgz#b0a59a0d2eff5437544ebf0ceaa6015841d09b5b" - integrity sha1-sKWaDS7/VDdUTr8M6qYBWEHQm1s= + resolved "https://registry.npmjs.org/expect.js/-/expect.js-0.3.1.tgz" + integrity sha1-sKWaDS7/VDdUTr8M6qYBWEHQm1s= sha512-okDF/FAPEul1ZFLae4hrgpIqAeapoo5TRdcg/lD0iN9S3GWrBFIJwNezGH1DMtIz+RxU4RrFmMq7WUUvDg3J6A== ext-list@^2.0.0: version "2.2.2" - resolved "https://registry.yarnpkg.com/ext-list/-/ext-list-2.2.2.tgz#0b98e64ed82f5acf0f2931babf69212ef52ddd37" + resolved "https://registry.npmjs.org/ext-list/-/ext-list-2.2.2.tgz" integrity sha512-u+SQgsubraE6zItfVA0tBuCBhfU9ogSRnsvygI7wht9TS510oLkBRXBsqopeUG/GBOIQyKZO9wjTqIu/sf5zFA== dependencies: mime-db "^1.28.0" ext-name@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/ext-name/-/ext-name-5.0.0.tgz#70781981d183ee15d13993c8822045c506c8f0a6" + resolved "https://registry.npmjs.org/ext-name/-/ext-name-5.0.0.tgz" integrity sha512-yblEwXAbGv1VQDmow7s38W77hzAgJAO50ztBLMcUyUBfxv1HC+LGwtiEN+Co6LtlqT/5uwVOxsD4TNIilWhwdQ== dependencies: ext-list "^2.0.0" @@ -3298,39 +3100,42 @@ ext-name@^5.0.0: extend-shallow@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" - integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= + resolved "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz" + integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug== dependencies: is-extendable "^0.1.0" -extend-shallow@^3.0.0, extend-shallow@^3.0.2: +extend-shallow@^3.0.0: version "3.0.2" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" - integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= + resolved "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz" + integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q== dependencies: assign-symbols "^1.0.0" is-extendable "^1.0.1" -extend@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.0.tgz#5a474353b9f3353ddd8176dfd37b91c83a46f1d4" - integrity sha1-WkdDU7nzNT3dgXbf03uRyDpG8dQ= - -extend@~3.0.0: +extend-shallow@^3.0.2: version "3.0.2" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" - integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== + resolved "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz" + integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q== + dependencies: + assign-symbols "^1.0.0" + is-extendable "^1.0.1" + +extend@^3.0.0, extend@~3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/extend/-/extend-3.0.0.tgz" + integrity sha1-WkdDU7nzNT3dgXbf03uRyDpG8dQ= sha512-5mYyg57hpD+sFaJmgNL9BidQ5C7dmJE3U5vzlRWbuqG+8dytvYEoxvKs6Tj5cm3LpMsFvRt20qz1ckezmsOUgQ== extglob@^0.3.1: version "0.3.2" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" - integrity sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE= + resolved "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz" + integrity sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE= sha512-1FOj1LOwn42TMrruOHGt18HemVnbwAmAak7krWk+wa93KXxGbK+2jpezm+ytJYDaBX0/SPLZFHKM7m+tKobWGg== dependencies: is-extglob "^1.0.0" extglob@^2.0.4: version "2.0.4" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" + resolved "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz" integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== dependencies: array-unique "^0.3.2" @@ -3342,54 +3147,42 @@ extglob@^2.0.4: snapdragon "^0.8.1" to-regex "^3.0.1" -extsprintf@1.3.0: +extsprintf@^1.2.0, extsprintf@1.3.0: version "1.3.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" - integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= - -extsprintf@^1.2.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" - integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= + resolved "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz" + integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g== fancy-log@^1.1.0: version "1.3.0" - resolved "https://registry.yarnpkg.com/fancy-log/-/fancy-log-1.3.0.tgz#45be17d02bb9917d60ccffd4995c999e6c8c9948" - integrity sha1-Rb4X0Cu5kX1gzP/UmVyZnmyMmUg= + resolved "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.0.tgz" + integrity sha1-Rb4X0Cu5kX1gzP/UmVyZnmyMmUg= sha512-1xzOeADpJSQN0eIu1IE0Z0QYa9imWiT4CutOHTT5Tog4y5cW9NpLE0VfYseAw9uVuj77iE3paXCG1rnCHzPKmw== dependencies: chalk "^1.1.1" time-stamp "^1.0.0" fast-levenshtein@~2.0.4: version "2.0.6" - resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" - integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= + resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz" + integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== faye-websocket@~0.10.0: version "0.10.0" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" - integrity sha1-TkkvjQTftviQA1B/btvy1QHnxvQ= + resolved "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz" + integrity sha1-TkkvjQTftviQA1B/btvy1QHnxvQ= sha512-Xhj93RXbMSq8urNCUq4p9l0P6hnySJ/7YNRhYNug0bLOuii7pKO7xQFb5mx9xZXWCar88pLPb805PvUkwrLZpQ== dependencies: websocket-driver ">=0.5.1" fd-slicer@~1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.0.1.tgz#8b5bcbd9ec327c5041bf9ab023fd6750f1177e65" - integrity sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU= + resolved "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz" + integrity sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU= sha512-MX1ZLPIuKED51hrI4++K+1B0VX87Cs4EkybD2q12Ysuf5p4vkmHqMvQJRlDwROqFr4D2Pzyit5wGQxf30grIcw== dependencies: pend "~1.2.0" -feature-detect-es6@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/feature-detect-es6/-/feature-detect-es6-1.3.1.tgz#f888736af9cb0c91f55663bfa4762eb96ee7047f" - integrity sha1-+IhzavnLDJH1VmO/pHYuuW7nBH8= - dependencies: - array-back "^1.0.3" - fetch-mock@5.12.2: version "5.12.2" - resolved "https://registry.yarnpkg.com/fetch-mock/-/fetch-mock-5.12.2.tgz#07fde6b71f718328b4ce9b81c82a7c11c05d9748" - integrity sha1-B/3mtx9xgyi0zpuByCp8EcBdl0g= + resolved "https://registry.npmjs.org/fetch-mock/-/fetch-mock-5.12.2.tgz" + integrity sha1-B/3mtx9xgyi0zpuByCp8EcBdl0g= sha512-2A2I5awNtv0nJWcjUbfX0Y6GXGQv0J3uUj1h7LpC537X1TYnsU91g81DVcx2ZnTJMSJH45mF8UNjmcf/CS/QvA== dependencies: glob-to-regexp "^0.3.0" node-fetch "^1.3.3" @@ -3397,70 +3190,75 @@ fetch-mock@5.12.2: figures@^1.3.5: version "1.7.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e" - integrity sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4= + resolved "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz" + integrity sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4= sha512-UxKlfCRuCBxSXU4C6t9scbDyWZ4VlaFFdojKtzJuSkuOBQ5CNFum+zZXFwHjo+CxBC1t6zlYPgHIgFjL8ggoEQ== dependencies: escape-string-regexp "^1.0.5" object-assign "^4.1.0" file-entry-cache@^1.3.1: version "1.3.1" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-1.3.1.tgz#44c61ea607ae4be9c1402f41f44270cbfe334ff8" - integrity sha1-RMYepgeuS+nBQC9B9EJwy/4zT/g= + resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-1.3.1.tgz" + integrity sha1-RMYepgeuS+nBQC9B9EJwy/4zT/g= sha512-JyVk7P0Hvw6uEAwH4Y0j+rZMvaMWvLBYRmRGAF2S6jKTycf0mMDcC7d21Y2KyrKJk3XI8YghSsk5KmRdbvg0VQ== dependencies: flat-cache "^1.2.1" object-assign "^4.0.1" file-entry-cache@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-2.0.0.tgz#c392990c3e684783d838b8c84a45d8a048458361" - integrity sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E= + resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz" + integrity sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E= sha512-uXP/zGzxxFvFfcZGgBIwotm+Tdc55ddPAzF7iHshP4YGaXMww7rSF9peD9D1sui5ebONg5UobsZv+FfgEpGv/w== dependencies: flat-cache "^1.2.1" object-assign "^4.0.1" file-set@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/file-set/-/file-set-2.0.1.tgz#db9bc4b70a7e5ba81c9d279c20a37f13369c7850" + resolved "https://registry.npmjs.org/file-set/-/file-set-2.0.1.tgz" integrity sha512-XgOUUpgR6FbbfYcniLw0qm1Am7PnNYIAkd+eXxRt42LiYhjaso0WiuQ+VmrNdtwotyM+cLCfZ56AZrySP3QnKA== dependencies: array-back "^2.0.0" glob "^7.1.3" -file-type@5.2.0, file-type@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/file-type/-/file-type-5.2.0.tgz#2ddbea7c73ffe36368dfae49dc338c058c2b8ad6" - integrity sha1-LdvqfHP/42No365J3DOMBYwritY= +file-type@^3.1.0: + version "3.9.0" + resolved "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz" + integrity sha1-JXoHg4TR24CHvESdEH1SpSZyuek= sha512-RLoqTXE8/vPmMuTI88DAzhMYC99I8BWv7zYP4A1puo5HIjEJ5EX48ighy4ZyKMG9EDXxBgW6e++cn7d1xuFghA== -file-type@^3.1.0, file-type@^3.8.0: +file-type@^3.8.0: version "3.9.0" - resolved "https://registry.yarnpkg.com/file-type/-/file-type-3.9.0.tgz#257a078384d1db8087bc449d107d52a52672b9e9" - integrity sha1-JXoHg4TR24CHvESdEH1SpSZyuek= + resolved "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz" + integrity sha1-JXoHg4TR24CHvESdEH1SpSZyuek= sha512-RLoqTXE8/vPmMuTI88DAzhMYC99I8BWv7zYP4A1puo5HIjEJ5EX48ighy4ZyKMG9EDXxBgW6e++cn7d1xuFghA== + +file-type@^5.2.0, file-type@5.2.0: + version "5.2.0" + resolved "https://registry.npmjs.org/file-type/-/file-type-5.2.0.tgz" + integrity sha1-LdvqfHP/42No365J3DOMBYwritY= sha512-Iq1nJ6D2+yIO4c8HHg4fyVb8mAJieo1Oloy1mLLaB2PvezNedhBVm+QU7g0qM42aiMbRXTxKKwGD17rjKNJYVQ== file-type@^6.1.0: version "6.1.0" - resolved "https://registry.yarnpkg.com/file-type/-/file-type-6.1.0.tgz#5a7dba98138fa0abec7afc43e5a9a0b2aac729f1" - integrity sha1-Wn26mBOPoKvsevxD5amgsqrHKfE= + resolved "https://registry.npmjs.org/file-type/-/file-type-6.1.0.tgz" + integrity sha1-Wn26mBOPoKvsevxD5amgsqrHKfE= sha512-KnkCH2ew/HtXArFmXNs7+J3QWkIOCeDlqMwnGzQFdcw9fy5CI0Hz/lJyxlCkP96RBDDTpnsJD1V3iEfmbegNbg== filename-regex@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" - integrity sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY= + resolved "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz" + integrity sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY= sha512-BTCqyBaWBTsauvnHiE8i562+EdJj+oUpkqWp2R1iCoR8f6oo8STRu3of7WJJ0TqWtxN50a5YFpzYK4Jj9esYfQ== filename-reserved-regex@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/filename-reserved-regex/-/filename-reserved-regex-1.0.0.tgz#e61cf805f0de1c984567d0386dc5df50ee5af7e4" - integrity sha1-5hz4BfDeHJhFZ9A4bcXfUO5a9+Q= + resolved "https://registry.npmjs.org/filename-reserved-regex/-/filename-reserved-regex-1.0.0.tgz" + integrity sha1-5hz4BfDeHJhFZ9A4bcXfUO5a9+Q= sha512-UZArj7+U+2reBBVCvVmRlyq9D7EYQdUtuNN+1iz7pF1jGcJ2L0TjiRCxsTZfj2xFbM4c25uGCUDpKTHA7L2TKg== filename-reserved-regex@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/filename-reserved-regex/-/filename-reserved-regex-2.0.0.tgz#abf73dfab735d045440abfea2d91f389ebbfa229" - integrity sha1-q/c9+rc10EVECr/qLZHzieu/oik= + resolved "https://registry.npmjs.org/filename-reserved-regex/-/filename-reserved-regex-2.0.0.tgz" + integrity sha1-q/c9+rc10EVECr/qLZHzieu/oik= sha512-lc1bnsSr4L4Bdif8Xb/qrtokGbq5zlsms/CYH8PP+WtCkGNF65DPiQY8vG3SakEdRn8Dlnm+gW/qWKKjS5sZzQ== filenamify@^1.0.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/filenamify/-/filenamify-1.2.1.tgz#a9f2ffd11c503bed300015029272378f1f1365a5" - integrity sha1-qfL/0RxQO+0wABUCknI3jx8TZaU= + resolved "https://registry.npmjs.org/filenamify/-/filenamify-1.2.1.tgz" + integrity sha1-qfL/0RxQO+0wABUCknI3jx8TZaU= sha512-DKVP0WQcB7WaIMSwDETqImRej2fepPqvXQjaVib7LRZn9Rxn5UbvK2tYTqGf1A1DkIprQQkG4XSQXSOZp7Q3GQ== dependencies: filename-reserved-regex "^1.0.0" strip-outer "^1.0.0" @@ -3468,8 +3266,8 @@ filenamify@^1.0.1: filenamify@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/filenamify/-/filenamify-2.0.0.tgz#bd162262c0b6e94bfbcdcf19a3bbb3764f785695" - integrity sha1-vRYiYsC26Uv7zc8Zo7uzdk94VpU= + resolved "https://registry.npmjs.org/filenamify/-/filenamify-2.0.0.tgz" + integrity sha1-vRYiYsC26Uv7zc8Zo7uzdk94VpU= sha512-5X5K6iJy4E2LPu1s/c78OnMU/ffKxQ0wgBjq2eF2xYnicrOKI2dfZnonkGTHr6x7FoiuTLEbuKMt+/C8lXFWfw== dependencies: filename-reserved-regex "^2.0.0" strip-outer "^1.0.0" @@ -3477,12 +3275,12 @@ filenamify@^2.0.0: filesize@^3.5.10: version "3.5.10" - resolved "https://registry.yarnpkg.com/filesize/-/filesize-3.5.10.tgz#fc8fa23ddb4ef9e5e0ab6e1e64f679a24a56761f" - integrity sha1-/I+iPdtO+eXgq24eZPZ5okpWdh8= + resolved "https://registry.npmjs.org/filesize/-/filesize-3.5.10.tgz" + integrity sha1-/I+iPdtO+eXgq24eZPZ5okpWdh8= sha512-SZYkDRODd8aH21Vjx4c07opLhGDJtcJkcoPeJQO1dR1uBZNykbTmSNGd2W9TORZ/SeZQMR7K6YIFSXXcjBWnNg== fill-range@^2.1.0: version "2.2.4" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.4.tgz#eb1e773abb056dcd8df2bfdf6af59b8b3a936565" + resolved "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz" integrity sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q== dependencies: is-number "^2.1.0" @@ -3493,8 +3291,8 @@ fill-range@^2.1.0: fill-range@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" - integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= + resolved "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz" + integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ== dependencies: extend-shallow "^2.0.1" is-number "^3.0.0" @@ -3503,28 +3301,28 @@ fill-range@^4.0.0: find-replace@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/find-replace/-/find-replace-3.0.0.tgz#3e7e23d3b05167a76f770c9fbd5258b0def68c38" + resolved "https://registry.npmjs.org/find-replace/-/find-replace-3.0.0.tgz" integrity sha512-6Tb2myMioCAgv5kfvP5/PkZZ/ntTpVK39fHY7WkWBgvbeE+VHd/tZuZ4mrC+bxh4cfOZeYKVPaJIZtZXV7GNCQ== dependencies: array-back "^3.0.1" find-up@^1.0.0: version "1.1.2" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" - integrity sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8= + resolved "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz" + integrity sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8= sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA== dependencies: path-exists "^2.0.0" pinkie-promise "^2.0.0" first-chunk-stream@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz#59bfb50cd905f60d7c394cd3d9acaab4e6ad934e" - integrity sha1-Wb+1DNkF9g18OUzT2ayqtOatk04= + resolved "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz" + integrity sha1-Wb+1DNkF9g18OUzT2ayqtOatk04= sha512-ArRi5axuv66gEsyl3UuK80CzW7t56hem73YGNYxNWTGNKFJUadSb9Gu9SHijYEUi8ulQMf1bJomYNwSCPHhtTQ== flat-cache@^1.2.1: version "1.2.2" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.2.2.tgz#fa86714e72c21db88601761ecf2f555d1abc6b96" - integrity sha1-+oZxTnLCHbiGAXYezy9VXRq8a5Y= + resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-1.2.2.tgz" + integrity sha1-+oZxTnLCHbiGAXYezy9VXRq8a5Y= sha512-JzMp5lzDuF/1qgd3g+awLvXlVxAcWxL4L2NfZe9r19bwjKqGjXg5waNXG8wuP9skmVmiKhAo/lN+FDJxVKNDgQ== dependencies: circular-json "^0.3.1" del "^2.0.2" @@ -3533,35 +3331,35 @@ flat-cache@^1.2.1: for-in@^1.0.1, for-in@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" - integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= + resolved "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz" + integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ== for-own@^0.1.4: version "0.1.5" - resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce" - integrity sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4= + resolved "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz" + integrity sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4= sha512-SKmowqGTJoPzLO1T0BBJpkfp3EMacCMOuH40hOUbrbzElVktk4DioXVM99QkLCyKoiuOmyjgcWMpVz2xjE7LZw== dependencies: for-in "^1.0.1" foreach@^2.0.5, foreach@~2.0.1: version "2.0.5" - resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99" - integrity sha1-C+4AUBiusmDQo6865ljdATbsG5k= + resolved "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz" + integrity sha1-C+4AUBiusmDQo6865ljdATbsG5k= sha512-ZBbtRiapkZYLsqoPyZOR+uPfto0GRMNQN1GwzZtZt7iZvPPbDDQV0JF5Hx4o/QFQ5c0vyuoZ98T8RSBbopzWtA== forever-agent@~0.5.0: version "0.5.2" - resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.5.2.tgz#6d0e09c4921f94a27f63d3b49c5feff1ea4c5130" - integrity sha1-bQ4JxJIflKJ/Y9O0nF/v8epMUTA= + resolved "https://registry.npmjs.org/forever-agent/-/forever-agent-0.5.2.tgz" + integrity sha1-bQ4JxJIflKJ/Y9O0nF/v8epMUTA= sha512-PDG5Ef0Dob/JsZUxUltJOhm/Y9mlteAE+46y3M9RBz/Rd3QVENJ75aGRhN56yekTUboaBIkd8KVWX2NjF6+91A== forever-agent@~0.6.1: version "0.6.1" - resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= + resolved "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz" + integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw== form-data@~0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-0.2.0.tgz#26f8bc26da6440e299cbdcfb69035c4f77a6e466" - integrity sha1-Jvi8JtpkQOKZy9z7aQNcT3em5GY= + resolved "https://registry.npmjs.org/form-data/-/form-data-0.2.0.tgz" + integrity sha1-Jvi8JtpkQOKZy9z7aQNcT3em5GY= sha512-LkinaG6JazVhYj2AKi67NOIAhqXcBOQACraT0WdhWW4ZO3kTiS0X7C1nJ1jFZf6wak4bVHIA/oOzWkh2ThAipg== dependencies: async "~0.9.0" combined-stream "~0.0.4" @@ -3569,8 +3367,8 @@ form-data@~0.2.0: form-data@~2.1.1: version "2.1.4" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1" - integrity sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE= + resolved "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz" + integrity sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE= sha512-8HWGSLAPr+AG0hBpsqi5Ob8HrLStN/LWeqhpFl14d7FJgHK48TmgLoALPz69XSUR65YJzDfLUX/BM8+MLJLghQ== dependencies: asynckit "^0.4.0" combined-stream "^1.0.5" @@ -3578,174 +3376,145 @@ form-data@~2.1.1: fragment-cache@^0.2.1: version "0.2.1" - resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" - integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= + resolved "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz" + integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA== dependencies: map-cache "^0.2.2" fs-exists-sync@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz#982d6893af918e72d08dec9e8673ff2b5a8d6add" - integrity sha1-mC1ok6+RjnLQjeyehnP/K1qNat0= + resolved "https://registry.npmjs.org/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz" + integrity sha1-mC1ok6+RjnLQjeyehnP/K1qNat0= sha512-cR/vflFyPZtrN6b38ZyWxpWdhlXrzZEBawlpBQMq7033xVY7/kg0GDMBK5jg8lDYQckdJ5x/YC88lM3C7VMsLg== fs-extra@1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-1.0.0.tgz#cd3ce5f7e7cb6145883fcae3191e9877f8587950" - integrity sha1-zTzl9+fLYUWIP8rjGR6Yd/hYeVA= + resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-1.0.0.tgz" + integrity sha1-zTzl9+fLYUWIP8rjGR6Yd/hYeVA= sha512-VerQV6vEKuhDWD2HGOybV6v5I73syoc/cXAbKlgTC7M/oFVEtklWlp9QH2Ijw3IaWDOQcMkldSPa7zXy79Z/UQ== dependencies: graceful-fs "^4.1.2" jsonfile "^2.1.0" klaw "^1.0.0" -fs-minipass@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.5.tgz#06c277218454ec288df77ada54a03b8702aacb9d" - integrity sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ== - dependencies: - minipass "^2.2.1" - fs-readdir-recursive@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz#e32fc030a2ccee44a6b5371308da54be0b397d27" + resolved "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz" integrity sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA== fs-then-native@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/fs-then-native/-/fs-then-native-2.0.0.tgz#19a124d94d90c22c8e045f2e8dd6ebea36d48c67" - integrity sha1-GaEk2U2QwiyOBF8ujdbr6jbUjGc= + resolved "https://registry.npmjs.org/fs-then-native/-/fs-then-native-2.0.0.tgz" + integrity sha1-GaEk2U2QwiyOBF8ujdbr6jbUjGc= sha512-X712jAOaWXkemQCAmWeg5rOT2i+KOpWz1Z/txk/cW0qlOu2oQ9H61vc5w3X/iyuUEfq/OyaFJ78/cZAQD1/bgA== fs.realpath@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= - -fsevents@^1.0.0: - version "1.2.4" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.4.tgz#f41dcb1af2582af3692da36fc55cbd8e1041c426" - integrity sha512-z8H8/diyk76B7q5wg+Ud0+CqzcAF3mBBI/bA5ne5zrRUUIvNkJY//D3BqyH571KuAC4Nr7Rw7CjWX4r0y9DvNg== - dependencies: - nan "^2.9.2" - node-pre-gyp "^0.10.0" + resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" + integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== function-bind@^1.0.2, function-bind@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== fwd-stream@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/fwd-stream/-/fwd-stream-1.0.4.tgz#ed281cabed46feecf921ee32dc4c50b372ac7cfa" - integrity sha1-7Sgcq+1G/uz5Ie4y3ExQs3KsfPo= + resolved "https://registry.npmjs.org/fwd-stream/-/fwd-stream-1.0.4.tgz" + integrity sha1-7Sgcq+1G/uz5Ie4y3ExQs3KsfPo= sha512-q2qaK2B38W07wfPSQDKMiKOD5Nzv2XyuvQlrmh1q0pxyHNanKHq8lwQ6n9zHucAwA5EbzRJKEgds2orn88rYTg== dependencies: readable-stream "~1.0.26-4" -gauge@~2.7.3: - version "2.7.4" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" - integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= - dependencies: - aproba "^1.0.3" - console-control-strings "^1.0.0" - has-unicode "^2.0.0" - object-assign "^4.1.0" - signal-exit "^3.0.0" - string-width "^1.0.1" - strip-ansi "^3.0.1" - wide-align "^1.1.0" - generate-function@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74" - integrity sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ= + resolved "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz" + integrity sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ= sha512-X46lB9wLCsgkyagCmX2Dev5od5j6niCr3UeMbXVDBVO4tlpXp3o4OFh+0gPTlkD3ZMixU8PCKxf0IMGQvPo8HQ== generate-object-property@^1.1.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0" - integrity sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA= + resolved "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz" + integrity sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA= sha512-TuOwZWgJ2VAMEGJvAyPWvpqxSANF0LDpmyHauMjFYzaACvn+QTT/AZomvPCzVBV7yDN3OmwHQ5OvHaeLKre3JQ== dependencies: is-property "^1.0.0" gensync@^1.0.0-beta.2: version "1.0.0-beta.2" - resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" + resolved "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz" integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== get-proxy@^1.0.1: version "1.1.0" - resolved "https://registry.yarnpkg.com/get-proxy/-/get-proxy-1.1.0.tgz#894854491bc591b0f147d7ae570f5c678b7256eb" - integrity sha1-iUhUSRvFkbDxR9euVw9cZ4tyVus= + resolved "https://registry.npmjs.org/get-proxy/-/get-proxy-1.1.0.tgz" + integrity sha1-iUhUSRvFkbDxR9euVw9cZ4tyVus= sha512-3cJ+77wC52qD2PqWNXtB2HkU6tQXc/X3hSMtSN0Y8c8nbYMMxF7vpsjH4H0iSt+28l/NK13DKl8iKAVGkqDFnA== dependencies: rc "^1.1.2" get-proxy@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/get-proxy/-/get-proxy-2.1.0.tgz#349f2b4d91d44c4d4d4e9cba2ad90143fac5ef93" + resolved "https://registry.npmjs.org/get-proxy/-/get-proxy-2.1.0.tgz" integrity sha512-zmZIaQTWnNQb4R4fJUEp/FC51eZsc6EkErspy3xtIYStaq8EB/hDIWipxsal+E8rz0qD7f2sL/NA9Xee4RInJw== dependencies: npm-conf "^1.1.0" -get-stdin@5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-5.0.1.tgz#122e161591e21ff4c52530305693f20e6393a398" - integrity sha1-Ei4WFZHiH/TFJTAwVpPyDmOTo5g= - get-stdin@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" - integrity sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4= + resolved "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz" + integrity sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4= sha512-F5aQMywwJ2n85s4hJPTT9RPxGmubonuB10MNYo17/xph174n2MIR33HRguhzVag10O/npM7SPk73LMZNP+FaWw== + +get-stdin@5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/get-stdin/-/get-stdin-5.0.1.tgz" + integrity sha1-Ei4WFZHiH/TFJTAwVpPyDmOTo5g= sha512-jZV7n6jGE3Gt7fgSTJoz91Ak5MuTLwMwkoYdjxuJ/AmjIsE1UC03y/IWkZCQGEvVNS9qoRNwy5BCqxImv0FVeA== get-stream@^2.2.0: version "2.3.1" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-2.3.1.tgz#5f38f93f346009666ee0150a054167f91bdd95de" - integrity sha1-Xzj5PzRgCWZu4BUKBUFn+Rvdld4= + resolved "https://registry.npmjs.org/get-stream/-/get-stream-2.3.1.tgz" + integrity sha1-Xzj5PzRgCWZu4BUKBUFn+Rvdld4= sha512-AUGhbbemXxrZJRD5cDvKtQxLuYaIbNtDTK8YqupCI393Q2KSTreEsLUN3ZxAWFGiKTzL6nKuzfcIvieflUX9qA== dependencies: object-assign "^4.0.1" pinkie-promise "^2.0.0" get-stream@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" - integrity sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ= + resolved "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz" + integrity sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ= sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ== get-value@^2.0.3, get-value@^2.0.6: version "2.0.6" - resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" - integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= + resolved "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz" + integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA== getpass@^0.1.1: version "0.1.7" - resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" - integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= + resolved "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz" + integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng== dependencies: assert-plus "^1.0.0" glob-base@^0.3.0: version "0.3.0" - resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" - integrity sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q= + resolved "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz" + integrity sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q= sha512-ab1S1g1EbO7YzauaJLkgLp7DZVAqj9M/dvKlTt8DkXA2tiOIcSMrlVI2J1RZyB5iJVccEscjGn+kpOG9788MHA== dependencies: glob-parent "^2.0.0" is-glob "^2.0.0" glob-parent@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28" - integrity sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg= + resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz" + integrity sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg= sha512-JDYOvfxio/t42HKdxkAYaCiBN7oYiuxykOxKxdaUW5Qn0zaYN3gRQWolrwdnf0shM9/EP0ebuuTmyoXNr1cC5w== dependencies: is-glob "^2.0.0" glob-parent@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" - integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4= + resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz" + integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4= sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA== dependencies: is-glob "^3.1.0" path-dirname "^1.0.0" glob-stream@^5.3.2: version "5.3.5" - resolved "https://registry.yarnpkg.com/glob-stream/-/glob-stream-5.3.5.tgz#a55665a9a8ccdc41915a87c701e32d4e016fad22" - integrity sha1-pVZlqajM3EGRWofHAeMtTgFvrSI= + resolved "https://registry.npmjs.org/glob-stream/-/glob-stream-5.3.5.tgz" + integrity sha1-pVZlqajM3EGRWofHAeMtTgFvrSI= sha512-piN8XVAO2sNxwVLokL4PswgJvK/uQ6+awwXUVRTGF+rRfgCZpn4hOqxiRuTEbU/k3qgKl0DACYQ/0Sge54UMQg== dependencies: extend "^3.0.0" glob "^5.0.3" @@ -3758,48 +3527,36 @@ glob-stream@^5.3.2: glob-to-regexp@^0.3.0: version "0.3.0" - resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" - integrity sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs= + resolved "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz" + integrity sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs= sha512-Iozmtbqv0noj0uDDqoL0zNq0VBEfK2YFoMAZoxJe4cwphvLR+JskfF30QhXHOR4m3KrE6NLRYw+U9MRXvifyig== -glob@7.1.1, glob@^7.0.3: - version "7.1.1" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.1.tgz#805211df04faaf1c63a3600306cdf5ade50b2ec8" - integrity sha1-gFIR3wT6rxxjo2ADBs31reULLsg= +glob@^5.0.3: + version "5.0.15" + resolved "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz" + integrity sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E= sha512-c9IPMazfRITpmAAKi22dK1VKxGDX9ehhqfABDriL/lzO92xcUKEJPQHrVA/2YHSNFB4iFlykVmWvwo48nr3OxA== dependencies: - fs.realpath "^1.0.0" inflight "^1.0.4" inherits "2" - minimatch "^3.0.2" + minimatch "2 || 3" once "^1.3.0" path-is-absolute "^1.0.0" -glob@7.1.2: - version "7.1.2" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" - integrity sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ== +glob@^7.0.3, glob@^7.0.5, glob@7.1.1: + version "7.1.1" + resolved "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz" + integrity sha1-gFIR3wT6rxxjo2ADBs31reULLsg= sha512-mRyN/EsN2SyNhKWykF3eEGhDpeNplMWaW18Bmh76tnOqk5TbELAVwFAYOCmKVssOYFrYvvLMguiA+NXO3ZTuVA== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - -glob@^5.0.3: - version "5.0.15" - resolved "https://registry.yarnpkg.com/glob/-/glob-5.0.15.tgz#1bc936b9e02f4a603fcc222ecf7633d30b8b93b1" - integrity sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E= - dependencies: - inflight "^1.0.4" - inherits "2" - minimatch "2 || 3" + minimatch "^3.0.2" once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.0.5: - version "7.1.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" - integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ== +glob@^7.1.3: + version "7.1.4" + resolved "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz" + integrity sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" @@ -3808,10 +3565,10 @@ glob@^7.0.5: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.1.3: - version "7.1.4" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255" - integrity sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A== +glob@7.1.2: + version "7.1.2" + resolved "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz" + integrity sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" @@ -3822,16 +3579,16 @@ glob@^7.1.3: global-modules@^0.2.3: version "0.2.3" - resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-0.2.3.tgz#ea5a3bed42c6d6ce995a4f8a1269b5dae223828d" - integrity sha1-6lo77ULG1s6ZWk+KEmm12uIjgo0= + resolved "https://registry.npmjs.org/global-modules/-/global-modules-0.2.3.tgz" + integrity sha1-6lo77ULG1s6ZWk+KEmm12uIjgo0= sha512-JeXuCbvYzYXcwE6acL9V2bAOeSIGl4dD+iwLY9iUx2VBJJ80R18HCn+JCwHM9Oegdfya3lEkGCdaRkSyc10hDA== dependencies: global-prefix "^0.1.4" is-windows "^0.2.0" global-prefix@^0.1.4: version "0.1.5" - resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-0.1.5.tgz#8d3bc6b8da3ca8112a160d8d496ff0462bfef78f" - integrity sha1-jTvGuNo8qBEqFg2NSW/wRiv+948= + resolved "https://registry.npmjs.org/global-prefix/-/global-prefix-0.1.5.tgz" + integrity sha1-jTvGuNo8qBEqFg2NSW/wRiv+948= sha512-gOPiyxcD9dJGCEArAhF4Hd0BAqvAe/JzERP7tYumE4yIkmIedPUVXcJFWbV3/p/ovIIvKjkrTk+f1UVkq7vvbw== dependencies: homedir-polyfill "^1.0.0" ini "^1.3.4" @@ -3840,23 +3597,23 @@ global-prefix@^0.1.4: globals@^11.1.0: version "11.12.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" + resolved "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== -globals@^9.0.0, globals@^9.2.0: - version "9.17.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-9.17.0.tgz#0c0ca696d9b9bb694d2e5470bd37777caad50286" - integrity sha1-DAymltm5u2lNLlRwvTd3fKrVAoY= - globals@^9.18.0: version "9.18.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" + resolved "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz" integrity sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ== +globals@^9.2.0: + version "9.17.0" + resolved "https://registry.npmjs.org/globals/-/globals-9.17.0.tgz" + integrity sha1-DAymltm5u2lNLlRwvTd3fKrVAoY= sha512-oZir3ZZbSYGRu+KeFbR9nWoB8wqAciMthMMSeoy2eFcRZf3uzZOsbCOFKtW/QdnK+cz7nn7eL3q6JCAfgsb/2Q== + globby@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-5.0.0.tgz#ebd84667ca0dbb330b99bcfc68eac2bc54370e0d" - integrity sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0= + resolved "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz" + integrity sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0= sha512-HJRTIH2EeH44ka+LWig+EqT2ONSYpVlNfx6pyd592/VF1TbfljJ7elwie7oSwcViLGqOdWocSdu2txwBF9bjmQ== dependencies: array-union "^1.0.1" arrify "^1.0.0" @@ -3867,15 +3624,15 @@ globby@^5.0.0: glogg@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/glogg/-/glogg-1.0.0.tgz#7fe0f199f57ac906cf512feead8f90ee4a284fc5" - integrity sha1-f+DxmfV6yQbPUS/urY+Q7kooT8U= + resolved "https://registry.npmjs.org/glogg/-/glogg-1.0.0.tgz" + integrity sha1-f+DxmfV6yQbPUS/urY+Q7kooT8U= sha512-mAiFe1CqTSGHrrrkeUSJE3GTZV1c1nLJ2Z02gUuBHZ4d69j/9TlhIfslmMVBkisJ7lmptteothFxIM/dNSx/xA== dependencies: sparkles "^1.0.0" got@^5.0.0: version "5.7.1" - resolved "https://registry.yarnpkg.com/got/-/got-5.7.1.tgz#5f81635a61e4a6589f180569ea4e381680a51f35" - integrity sha1-X4FjWmHkplifGAVp6k44FoClHzU= + resolved "https://registry.npmjs.org/got/-/got-5.7.1.tgz" + integrity sha1-X4FjWmHkplifGAVp6k44FoClHzU= sha512-1qd54GLxvVgzuidFmw9ze9umxS3rzhdBH6Wt6BTYrTQUXTN01vGGYXwzLzYLowNx8HBH3/c7kRyvx90fh13i7Q== dependencies: create-error-class "^3.0.1" duplexer2 "^0.1.4" @@ -3895,7 +3652,7 @@ got@^5.0.0: got@^7.0.0: version "7.1.0" - resolved "https://registry.yarnpkg.com/got/-/got-7.1.0.tgz#05450fd84094e6bbea56f451a43a9c289166385a" + resolved "https://registry.npmjs.org/got/-/got-7.1.0.tgz" integrity sha512-Y5WMo7xKKq1muPsxD+KmrR8DH5auG7fBdDVueZwETwV6VytKyU9OX/ddpq2/1hp1vIPvVb4T81dKQz3BivkNLw== dependencies: decompress-response "^3.2.0" @@ -3913,24 +3670,19 @@ got@^7.0.0: url-parse-lax "^1.0.0" url-to-options "^1.0.1" -graceful-fs@^4.0.0, graceful-fs@^4.1.10, graceful-fs@^4.1.6, graceful-fs@^4.1.9: - version "4.1.11" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" - integrity sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg= - -graceful-fs@^4.1.11, graceful-fs@^4.1.2: +graceful-fs@^4.0.0, graceful-fs@^4.1.10, graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.1.9: version "4.1.15" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.15.tgz#ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00" + resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz" integrity sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA== "graceful-readlink@>= 1.0.0": version "1.0.1" - resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" - integrity sha1-TK+tdrxi8C+gObL5Tpo906ORpyU= + resolved "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz" + integrity sha1-TK+tdrxi8C+gObL5Tpo906ORpyU= sha512-8tLu60LgxF6XpdbK8OW3FA+IfTNBn1ZHGHKF4KQbEeSkajYw5PlYJcKluntgegDPTg8UkHjpet1T82vk6TQ68w== graphql-js-client-compiler@0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/graphql-js-client-compiler/-/graphql-js-client-compiler-0.2.0.tgz#44caf9ef87740eaab76704b182a2eee5b9f6c445" + resolved "https://registry.npmjs.org/graphql-js-client-compiler/-/graphql-js-client-compiler-0.2.0.tgz" integrity sha512-xqygOT7dygoka9QeFX1Khvgtp5Hjt9NW51lwYGR7b9J9qP2Ej5RQj39M8DRSZccU+zvWSiUR8wcY97HDyKeNQg== dependencies: babel-generator "6.25.0" @@ -3945,18 +3697,18 @@ graphql-js-client-compiler@0.2.0: graphql-js-client@0.12.0: version "0.12.0" - resolved "https://registry.yarnpkg.com/graphql-js-client/-/graphql-js-client-0.12.0.tgz#2f367cf1425ca17eee98cae7993f19abecf0a458" + resolved "https://registry.npmjs.org/graphql-js-client/-/graphql-js-client-0.12.0.tgz" integrity sha512-d5hPmlzMLq/yZWihd9eaMaRZxcdf+vrFQJxxIep9Tqei+wbesaR1JhkIBU2Czdjz6pCp58msNcyAr1OWTkgZuA== graphql-js-client@0.7.0: version "0.7.0" - resolved "https://registry.yarnpkg.com/graphql-js-client/-/graphql-js-client-0.7.0.tgz#6d6006680c4e6eaf2e4d284d430b0fae687de154" + resolved "https://registry.npmjs.org/graphql-js-client/-/graphql-js-client-0.7.0.tgz" integrity sha512-Qb4EDM2s4JVeDVnm1evH8Q7GMR8qwj+jZJFqXsZ8BijADBkr8y9SX1Qd+JP0kdvDSIvQPZ3ePVc0v+lVxwlxSA== graphql-js-schema-fetch@1.1.2: version "1.1.2" - resolved "https://registry.yarnpkg.com/graphql-js-schema-fetch/-/graphql-js-schema-fetch-1.1.2.tgz#853a6fd8ef3c1392ea4e5e93b567c274f6197826" - integrity sha1-hTpv2O88E5LqTl6TtWfCdPYZeCY= + resolved "https://registry.npmjs.org/graphql-js-schema-fetch/-/graphql-js-schema-fetch-1.1.2.tgz" + integrity sha1-hTpv2O88E5LqTl6TtWfCdPYZeCY= sha512-ra+Mkdj2+lrL4I6G93jA4Y0TSYyilokU5g79D9XRVr6cnNHfxgfPF+FFFOKc09E/izgmxYNAbtya7e/1luvngw== dependencies: graphql "0.7.0" minimist "1.2.0" @@ -3964,7 +3716,7 @@ graphql-js-schema-fetch@1.1.2: graphql-js-schema@0.7.1: version "0.7.1" - resolved "https://registry.yarnpkg.com/graphql-js-schema/-/graphql-js-schema-0.7.1.tgz#365ab02769ca3f49fdc1086a67ff6284e32c8c19" + resolved "https://registry.npmjs.org/graphql-js-schema/-/graphql-js-schema-0.7.1.tgz" integrity sha512-bGexqMmJ0lu9SSi0oVa3A+iA0T81q07vgBzFbuO6OT+TY13QEA9Dbo7+uisSmf4O1DKhdWxjIVGGTalA9rCPEQ== dependencies: babel-generator "6.16.0" @@ -3980,7 +3732,7 @@ graphql-js-schema@0.7.1: graphql-to-js-client-builder@1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/graphql-to-js-client-builder/-/graphql-to-js-client-builder-1.0.0.tgz#3660e1c1a89422b926b913f3cf72e07fd8b3e99d" + resolved "https://registry.npmjs.org/graphql-to-js-client-builder/-/graphql-to-js-client-builder-1.0.0.tgz" integrity sha512-p8tBj7nZ53ZoWBQIhnrJ0xxSxu7F8NFNrLxKQMgjLT20Lnz+YN3kPtfxE0OV43PIDTnr/thjKkUSjXo7D7aB+A== dependencies: babel-generator "6.24.1" @@ -3989,34 +3741,34 @@ graphql-to-js-client-builder@1.0.0: graphql@0.10.3: version "0.10.3" - resolved "https://registry.yarnpkg.com/graphql/-/graphql-0.10.3.tgz#c313afd5518e673351bee18fb63e2a0e487407ab" - integrity sha1-wxOv1VGOZzNRvuGPtj4qDkh0B6s= + resolved "https://registry.npmjs.org/graphql/-/graphql-0.10.3.tgz" + integrity sha1-wxOv1VGOZzNRvuGPtj4qDkh0B6s= sha512-MueSLlN8GxOjb0sHHAeLP4hQZ0jVtHikRA0/WmX73xQilF+8TUhF+CxgtTjWc5uGgcZUUPfmwO1za5N0C4JPUg== dependencies: iterall "^1.1.0" graphql@0.7.0: version "0.7.0" - resolved "https://registry.yarnpkg.com/graphql/-/graphql-0.7.0.tgz#5701492838edc6c673c184075eb8f06b11a7e451" - integrity sha1-VwFJKDjtxsZzwYQHXrjwaxGn5FE= + resolved "https://registry.npmjs.org/graphql/-/graphql-0.7.0.tgz" + integrity sha1-VwFJKDjtxsZzwYQHXrjwaxGn5FE= sha512-kK9nqdtm403lNgQYlorQNQidQbBvqeGmv4UgXK9Vt2HgPqrJAF0Tw9KgicdpnjR9Bt86JqoxvnMSgljL0KL0Ow== dependencies: iterall "1.0.2" graphql@0.9.6: version "0.9.6" - resolved "https://registry.yarnpkg.com/graphql/-/graphql-0.9.6.tgz#514421e9d225c29dfc8fd305459abae58815ef2c" - integrity sha1-UUQh6dIlwp38j9MFRZq65YgV7yw= + resolved "https://registry.npmjs.org/graphql/-/graphql-0.9.6.tgz" + integrity sha1-UUQh6dIlwp38j9MFRZq65YgV7yw= sha512-fdfawcX2SV68cwZp1iv4UMrDnuBROT1EtWmgs36CuF4N5HgOgMUKX1bf4sZZF16FBwbZWaU948k5Fay7AJqqXQ== dependencies: iterall "^1.0.0" growl@1.9.2: version "1.9.2" - resolved "https://registry.yarnpkg.com/growl/-/growl-1.9.2.tgz#0ea7743715db8d8de2c5ede1775e1b45ac85c02f" - integrity sha1-Dqd0NxXbjY3ixe3hd14bRayFwC8= + resolved "https://registry.npmjs.org/growl/-/growl-1.9.2.tgz" + integrity sha1-Dqd0NxXbjY3ixe3hd14bRayFwC8= sha512-RTBwDHhNuOx4F0hqzItc/siXCasGfC4DeWcBamclWd+6jWtBaeB/SGbMkGf0eiQoW7ib8JpvOgnUsmgMHI3Mfw== gulp-decompress@^1.2.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/gulp-decompress/-/gulp-decompress-1.2.0.tgz#8eeb65a5e015f8ed8532cafe28454960626f0dc7" - integrity sha1-jutlpeAV+O2FMsr+KEVJYGJvDcc= + resolved "https://registry.npmjs.org/gulp-decompress/-/gulp-decompress-1.2.0.tgz" + integrity sha1-jutlpeAV+O2FMsr+KEVJYGJvDcc= sha512-ChTv+4/4BwAdQLUgQoAvLFjYFvxYF6p9Mmf/b19/Lp7yNCvb8+KRkdXV8Gd7XErxtrEh8XDCCVon3DgqW4TgfA== dependencies: archive-type "^3.0.0" decompress "^3.0.0" @@ -4025,13 +3777,13 @@ gulp-decompress@^1.2.0: gulp-rename@^1.2.0: version "1.2.2" - resolved "https://registry.yarnpkg.com/gulp-rename/-/gulp-rename-1.2.2.tgz#3ad4428763f05e2764dec1c67d868db275687817" - integrity sha1-OtRCh2PwXidk3sHGfYaNsnVoeBc= + resolved "https://registry.npmjs.org/gulp-rename/-/gulp-rename-1.2.2.tgz" + integrity sha1-OtRCh2PwXidk3sHGfYaNsnVoeBc= sha512-qhfUlYwq5zIP4cpRjx+np2vZVnr0xCRQrF3RsGel8uqL47Gu3yjmllSfnvJyl/39zYuxS68e1nnxImbm7388vw== gulp-sourcemaps@1.6.0: version "1.6.0" - resolved "https://registry.yarnpkg.com/gulp-sourcemaps/-/gulp-sourcemaps-1.6.0.tgz#b86ff349d801ceb56e1d9e7dc7bbcb4b7dee600c" - integrity sha1-uG/zSdgBzrVuHZ59x7vLS33uYAw= + resolved "https://registry.npmjs.org/gulp-sourcemaps/-/gulp-sourcemaps-1.6.0.tgz" + integrity sha1-uG/zSdgBzrVuHZ59x7vLS33uYAw= sha512-NjRy6+Qb5K1xbwOvPviD3uA4KSq2zsalPL+4vxPQPuL+kKzHjXJL10/kLaESic3LmBto8VIBHr3gIN3F9AjnhA== dependencies: convert-source-map "^1.1.1" graceful-fs "^4.1.2" @@ -4041,8 +3793,8 @@ gulp-sourcemaps@1.6.0: gulp-util@^3.0.1: version "3.0.8" - resolved "https://registry.yarnpkg.com/gulp-util/-/gulp-util-3.0.8.tgz#0054e1e744502e27c04c187c3ecc505dd54bbb4f" - integrity sha1-AFTh50RQLifATBh8PsxQXdVLu08= + resolved "https://registry.npmjs.org/gulp-util/-/gulp-util-3.0.8.tgz" + integrity sha1-AFTh50RQLifATBh8PsxQXdVLu08= sha512-q5oWPc12lwSFS9h/4VIjG+1NuNDlJ48ywV2JKItY4Ycc/n1fXJeYPVQsfu5ZrhQi7FGSDBalwUCLar/GyHXKGw== dependencies: array-differ "^1.0.0" array-uniq "^1.0.2" @@ -4065,14 +3817,14 @@ gulp-util@^3.0.1: gulplog@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/gulplog/-/gulplog-1.0.0.tgz#e28c4d45d05ecbbed818363ce8f9c5926229ffe5" - integrity sha1-4oxNRdBey77YGDY86PnFkmIp/+U= + resolved "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz" + integrity sha1-4oxNRdBey77YGDY86PnFkmIp/+U= sha512-hm6N8nrm3Y08jXie48jsC55eCZz9mnb4OirAStEk2deqeyhXU3C1otDVh+ccttMuc1sBi6RX6ZJ720hs9RCvgw== dependencies: glogg "^1.0.0" handlebars@^4.0.5, handlebars@^4.2.0: version "4.7.7" - resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.7.tgz#9ce33416aad02dbd6c8fafa8240d5d98004945a1" + resolved "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz" integrity sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA== dependencies: minimist "^1.2.5" @@ -4084,76 +3836,71 @@ handlebars@^4.0.5, handlebars@^4.2.0: har-schema@^1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e" - integrity sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4= + resolved "https://registry.npmjs.org/har-schema/-/har-schema-1.0.5.tgz" + integrity sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4= sha512-f8xf2GOR6Rgwc9FPTLNzgwB+JQ2/zMauYXSWmX5YV5acex6VomT0ocSuwR7BfXo5MpHi+jL+saaux2fwsGJDKQ== har-validator@~4.2.1: version "4.2.1" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a" - integrity sha1-M0gdDxu/9gDdID11gSpqX7oALio= + resolved "https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz" + integrity sha1-M0gdDxu/9gDdID11gSpqX7oALio= sha512-5Gbp6RAftMYYV3UEI4c4Vv3+a4dQ7taVyvHt+/L6kRt+f4HX1GweAk5UDWN0SvdVnRBzGQ6OG89pGaD9uSFnVw== dependencies: ajv "^4.9.1" har-schema "^1.0.5" has-ansi@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-0.1.0.tgz#84f265aae8c0e6a88a12d7022894b7568894c62e" - integrity sha1-hPJlqujA5qiKEtcCKJS3VoiUxi4= + resolved "https://registry.npmjs.org/has-ansi/-/has-ansi-0.1.0.tgz" + integrity sha1-hPJlqujA5qiKEtcCKJS3VoiUxi4= sha512-1YsTg1fk2/6JToQhtZkArMkurq8UoWU1Qe0aR3VUHjgij4nOylSWLWAtBXoZ4/dXOmugfLGm1c+QhuD0JyedFA== dependencies: ansi-regex "^0.2.0" has-ansi@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" - integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= + resolved "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz" + integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg== dependencies: ansi-regex "^2.0.0" has-flag@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" - integrity sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo= + resolved "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz" + integrity sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo= sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA== has-flag@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= + resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" + integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== has-glob@^0.1.1: version "0.1.1" - resolved "https://registry.yarnpkg.com/has-glob/-/has-glob-0.1.1.tgz#a261c4c2a6c667e0c77b700a7f297c39ef3aa589" - integrity sha1-omHEwqbGZ+DHe3AKfyl8Oe86pYk= + resolved "https://registry.npmjs.org/has-glob/-/has-glob-0.1.1.tgz" + integrity sha1-omHEwqbGZ+DHe3AKfyl8Oe86pYk= sha512-WMHzb7oCwDcMDngWy0b+viLjED8zvSi5d4/YdBetADHX/rLH+noJaRTytuyN6thTxxM7lK+FloogQHHdOOR+7g== dependencies: is-glob "^2.0.1" has-gulplog@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/has-gulplog/-/has-gulplog-0.1.0.tgz#6414c82913697da51590397dafb12f22967811ce" - integrity sha1-ZBTIKRNpfaUVkDl9r7EvIpZ4Ec4= + resolved "https://registry.npmjs.org/has-gulplog/-/has-gulplog-0.1.0.tgz" + integrity sha1-ZBTIKRNpfaUVkDl9r7EvIpZ4Ec4= sha512-+F4GzLjwHNNDEAJW2DC1xXfEoPkRDmUdJ7CBYw4MpqtDwOnqdImJl7GWlpqx+Wko6//J8uKTnIe4wZSv7yCqmw== dependencies: sparkles "^1.0.0" has-symbol-support-x@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/has-symbol-support-x/-/has-symbol-support-x-1.4.0.tgz#442d89b1d0ac6cf5ff2f7b916ee539869b93a256" + resolved "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.0.tgz" integrity sha512-F1NtLDtW9NyUrS3faUcI1yVFHCTXyzPb1jfrZBQi5NHxFPlXxZnFLFGzfA2DsdmgCxv2MZ0+bfcgC4EZTmk4SQ== has-to-string-tag-x@^1.2.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/has-to-string-tag-x/-/has-to-string-tag-x-1.4.0.tgz#49d7bcde85c2409be38ac327e3e119a451657c7b" + resolved "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.0.tgz" integrity sha512-R3OdOP9j6AH5hS1yXeu9wAS+iKSZQx/CC6aMdN6WiaqPlBoA2S+47MtoMsZgKr2m0eAJ+73WWGX0RaFFE5XWKA== dependencies: has-symbol-support-x "^1.4.0" -has-unicode@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" - integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= - has-value@^0.3.1: version "0.3.1" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" - integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= + resolved "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz" + integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q== dependencies: get-value "^2.0.3" has-values "^0.1.4" @@ -4161,8 +3908,8 @@ has-value@^0.3.1: has-value@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" - integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= + resolved "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz" + integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw== dependencies: get-value "^2.0.6" has-values "^1.0.0" @@ -4170,60 +3917,60 @@ has-value@^1.0.0: has-values@^0.1.4: version "0.1.4" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" - integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E= + resolved "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz" + integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E= sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ== has-values@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" - integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= + resolved "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz" + integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ== dependencies: is-number "^3.0.0" kind-of "^4.0.0" has@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28" - integrity sha1-hGFzP1OLCDfJNh45qauelwTcLyg= + resolved "https://registry.npmjs.org/has/-/has-1.0.1.tgz" + integrity sha1-hGFzP1OLCDfJNh45qauelwTcLyg= sha512-8wpov6mGFPJ/SYWGQIFo6t0yuNWoO9MkSq3flX8LhiGmbIUhDETp9knPMcIm0Xig1ybWsw6gq2w0gCz1JHD+Qw== dependencies: function-bind "^1.0.2" hash.js@^1.0.0, hash.js@^1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.0.3.tgz#1332ff00156c0a0ffdd8236013d07b77a0451573" - integrity sha1-EzL/ABVsCg/92CNgE9B7d6BFFXM= + resolved "https://registry.npmjs.org/hash.js/-/hash.js-1.0.3.tgz" + integrity sha1-EzL/ABVsCg/92CNgE9B7d6BFFXM= sha512-J0ew1WQhNTfUrH4VYckHyBLq3WzyKJleK8HPeWVIFtgu/mUBKy1fKtk3drOijR2T1gh0ZqC6EZ06uGRgdMASSg== dependencies: inherits "^2.0.1" -hawk@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/hawk/-/hawk-1.1.1.tgz#87cd491f9b46e4e2aeaca335416766885d2d1ed9" - integrity sha1-h81JH5tG5OKurKM1QWdmiF0tHtk= - dependencies: - boom "0.4.x" - cryptiles "0.2.x" - hoek "0.9.x" - sntp "0.2.x" - hawk@~3.1.3: version "3.1.3" - resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4" - integrity sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ= + resolved "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz" + integrity sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ= sha512-X8xbmTc1cbPXcQV4WkLcRMALuyoxhfpFATmyuCxJPOAvrDS4DNnsTAOmKUxMTOWU6TzrTOkxPKwIx5ZOpJVSrg== dependencies: boom "2.x.x" cryptiles "2.x.x" hoek "2.x.x" sntp "1.x.x" +hawk@1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/hawk/-/hawk-1.1.1.tgz" + integrity sha1-h81JH5tG5OKurKM1QWdmiF0tHtk= sha512-am8sVA2bCJIw8fuuVcKvmmNnGFUGW8spTkVtj2fXTEZVkfN42bwFZFtDem57eFi+NSxurJB8EQ7Jd3uCHLn8Vw== + dependencies: + boom "0.4.x" + cryptiles "0.2.x" + hoek "0.9.x" + sntp "0.2.x" + he@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd" - integrity sha1-k0EP0hsAlzUVH4howvJx80J+I/0= + resolved "https://registry.npmjs.org/he/-/he-1.1.1.tgz" + integrity sha1-k0EP0hsAlzUVH4howvJx80J+I/0= sha512-z/GDPjlRMNOa2XJiB4em8wJpuuBfrFOlYKTZxtpkdr1uPdibHI8rYA3MY0KDObpVyaes0e/aunid/t88ZI2EKA== hmac-drbg@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.0.tgz#3db471f45aae4a994a0688322171f51b8b91bee5" - integrity sha1-PbRx9FquSplKBogyIXH1G4uRvuU= + resolved "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.0.tgz" + integrity sha1-PbRx9FquSplKBogyIXH1G4uRvuU= sha512-t5nDHcrbDg+ZadWX/xZQfW2WD5/zEfwa18mwu/sOEl4qbfZnomevJsBiX8/h4AjhHzT+UWf/hFbY2DiK7VWQQw== dependencies: hash.js "^1.0.3" minimalistic-assert "^1.0.0" @@ -4231,46 +3978,46 @@ hmac-drbg@^1.0.0: hoek@0.9.x: version "0.9.1" - resolved "https://registry.yarnpkg.com/hoek/-/hoek-0.9.1.tgz#3d322462badf07716ea7eb85baf88079cddce505" - integrity sha1-PTIkYrrfB3Fup+uFuviAec3c5QU= + resolved "https://registry.npmjs.org/hoek/-/hoek-0.9.1.tgz" + integrity sha1-PTIkYrrfB3Fup+uFuviAec3c5QU= sha512-ZZ6eGyzGjyMTmpSPYVECXy9uNfqBR7x5CavhUaLOeD6W0vWK1mp/b7O3f86XE0Mtfo9rZ6Bh3fnuw9Xr8MF9zA== hoek@2.x.x: version "2.16.3" - resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" - integrity sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0= + resolved "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz" + integrity sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0= sha512-V6Yw1rIcYV/4JsnggjBU0l4Kr+EXhpwqXRusENU1Xx6ro00IHPHYNynCuBTOZAPlr3AAmLvchH9I7N/VUdvOwQ== hoek@4.x.x: version "4.2.0" - resolved "https://registry.yarnpkg.com/hoek/-/hoek-4.2.0.tgz#72d9d0754f7fe25ca2d01ad8f8f9a9449a89526d" + resolved "https://registry.npmjs.org/hoek/-/hoek-4.2.0.tgz" integrity sha512-v0XCLxICi9nPfYrS9RL8HbYnXi9obYAeLbSP00BmnZwCK9+Ih9WOjoZ8YoHCoav2csqn4FOz4Orldsy2dmDwmQ== home-or-tmp@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" - integrity sha1-42w/LSyufXRqhX440Y1fMqeILbg= + resolved "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz" + integrity sha1-42w/LSyufXRqhX440Y1fMqeILbg= sha512-ycURW7oUxE2sNiPVw1HVEFsW+ecOpJ5zaj7eC0RlwhibhRBod20muUN8qu/gzx956YrLolVvs1MTXwKgC2rVEg== dependencies: os-homedir "^1.0.0" os-tmpdir "^1.0.1" homedir-polyfill@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz#4c2bbc8a758998feebf5ed68580f76d46768b4bc" - integrity sha1-TCu8inWJmP7r9e1oWA921GdotLw= + resolved "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz" + integrity sha1-TCu8inWJmP7r9e1oWA921GdotLw= sha512-vyB97wSHuFP0FIQmu1H5RZCEUS0D11Dk9OFpXYo4D6HLFmIa5rbXh28ZGBWBe8LQjrw5fz8aoVRW09vP50XqCg== dependencies: parse-passwd "^1.0.0" http-proxy@^1.8.1: version "1.16.2" - resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.16.2.tgz#06dff292952bf64dbe8471fa9df73066d4f37742" - integrity sha1-Bt/ykpUr9k2+hHH6nfcwZtTzd0I= + resolved "https://registry.npmjs.org/http-proxy/-/http-proxy-1.16.2.tgz" + integrity sha1-Bt/ykpUr9k2+hHH6nfcwZtTzd0I= sha512-mVtRyhMoqY5UCrvvqTTIfQPgRO+dDR1qHbuBYk8fjUpA51KUzesT++tRQSdiEhjBBobO4PCnP4ITc/BFsBkm6w== dependencies: eventemitter3 "1.x.x" requires-port "1.x.x" http-server@0.10.0: version "0.10.0" - resolved "https://registry.yarnpkg.com/http-server/-/http-server-0.10.0.tgz#b2a446b16a9db87ed3c622ba9beb1b085b1234a7" - integrity sha1-sqRGsWqduH7TxiK6m+sbCFsSNKc= + resolved "https://registry.npmjs.org/http-server/-/http-server-0.10.0.tgz" + integrity sha1-sqRGsWqduH7TxiK6m+sbCFsSNKc= sha512-RmgukQzcSxenuuvIaNBfGOZjKsNnRpXT2JqGdX9pf7D4P6MfXXS59nameKIR4ZEEnNb0l2ys9rcxxYDkYm3Quw== dependencies: colors "1.0.3" corser "~2.0.0" @@ -4283,8 +4030,8 @@ http-server@0.10.0: http-signature@~0.10.0: version "0.10.1" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-0.10.1.tgz#4fbdac132559aa8323121e540779c0a012b27e66" - integrity sha1-T72sEyVZqoMjEh5UB3nAoBKyfmY= + resolved "https://registry.npmjs.org/http-signature/-/http-signature-0.10.1.tgz" + integrity sha1-T72sEyVZqoMjEh5UB3nAoBKyfmY= sha512-coK8uR5rq2IMj+Hen+sKPA5ldgbCc1/spPdKCL1Fw6h+D0s/2LzMcRK0Cqufs1h0ryx/niwBHGFu8HC3hwU+lA== dependencies: asn1 "0.1.11" assert-plus "^0.1.5" @@ -4292,89 +4039,70 @@ http-signature@~0.10.0: http-signature@~1.1.0: version "1.1.1" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" - integrity sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8= + resolved "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz" + integrity sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8= sha512-iUn0NcRULlDGtqNLN1Jxmzayk8ogm7NToldASyZBpM2qggbphjXzNOiw3piN8tgz+e/DRs6X5gAzFwTI6BCRcg== dependencies: assert-plus "^0.2.0" jsprim "^1.2.2" sshpk "^1.7.0" -iconv-lite@^0.4.4: - version "0.4.24" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" - integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - iconv-lite@~0.4.13: version "0.4.15" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.15.tgz#fe265a218ac6a57cfe854927e9d04c19825eddeb" - integrity sha1-/iZaIYrGpXz+hUkn6dBMGYJe3es= + resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.15.tgz" + integrity sha1-/iZaIYrGpXz+hUkn6dBMGYJe3es= sha512-RGR+c9Lm+tLsvU57FTJJtdbv2hQw42Yl2n26tVIBaYmZzLN+EGfroUugN/z9nJf9kOXd49hBmpoGr4FEm+A4pw== idb-wrapper@^1.5.0: version "1.7.1" - resolved "https://registry.yarnpkg.com/idb-wrapper/-/idb-wrapper-1.7.1.tgz#6a32670122e173a84ecc5cfa9668fa2ceb221b04" - integrity sha1-ajJnASLhc6hOzFz6lmj6LOsiGwQ= + resolved "https://registry.npmjs.org/idb-wrapper/-/idb-wrapper-1.7.1.tgz" + integrity sha1-ajJnASLhc6hOzFz6lmj6LOsiGwQ= sha512-t9Jq6+w0E/nMKFomw7i3yO/fQrJYK/ejpFV12FH3SNonyVmDeYMjcYuWXI37DZqVNVqEOeVN8iOqRGPbxixmxA== ieee754@^1.1.4: version "1.1.8" - resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.8.tgz#be33d40ac10ef1926701f6f08a2d86fbfd1ad3e4" - integrity sha1-vjPUCsEO8ZJnAfbwii2G+/0a0+Q= - -ignore-walk@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.1.tgz#a83e62e7d272ac0e3b551aaa82831a19b69f82f8" - integrity sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ== - dependencies: - minimatch "^3.0.4" + resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.1.8.tgz" + integrity sha1-vjPUCsEO8ZJnAfbwii2G+/0a0+Q= sha512-/aoyv2Nt7mGLnCAWzE0C1WH9Xd8ZsqR0f4Pjwxputi1JNm01+InyAYQotF4N+ulEIjbEsJo22NOHr+U/XEZ1Pw== ignore@^3.0.11, ignore@^3.1.2, ignore@^3.1.5: version "3.2.6" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.2.6.tgz#26e8da0644be0bb4cb39516f6c79f0e0f4ffe48c" - integrity sha1-JujaBkS+C7TLOVFvbHnw4PT/5Iw= + resolved "https://registry.npmjs.org/ignore/-/ignore-3.2.6.tgz" + integrity sha1-JujaBkS+C7TLOVFvbHnw4PT/5Iw= sha512-6X+/4O51yfrZ5F/eTL2XO8EU2USFgt9UWaWkVJou/V9JMHm+MdyQf0ZQqjc7Y2CtxJwepmrwbAdTDGuaWRo0JA== imurmurhash@^0.1.4: version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" - integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= + resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" + integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== in-publish@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/in-publish/-/in-publish-2.0.0.tgz#e20ff5e3a2afc2690320b6dc552682a9c7fadf51" - integrity sha1-4g/146KvwmkDILbcVSaCqcf631E= + resolved "https://registry.npmjs.org/in-publish/-/in-publish-2.0.0.tgz" + integrity sha1-4g/146KvwmkDILbcVSaCqcf631E= sha512-S/Qt3SBbP15k2Yll5xaguu2c5E1LZnhwERvHt/FqUx+Ae/lYHVf2ZE96hUgcXJkcCbXoxkkSRohsG/YXXMNOCQ== indexof@~0.0.1: version "0.0.1" - resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" - integrity sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10= + resolved "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz" + integrity sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10= sha512-i0G7hLJ1z0DE8dsqJa2rycj9dBmNKgXBvotXtZYXakU9oivfB9Uj2ZBC27qqef2U58/ZLwalxa1X/RDCdkHtVg== inflight@^1.0.4: version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= + resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" + integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== dependencies: once "^1.3.0" wrappy "1" -inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1, inherits@~2.0.3: +inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1, inherits@2: version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= + resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz" + integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw== -ini@^1.3.4: +ini@^1.3.4, ini@~1.3.0: version "1.3.4" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e" - integrity sha1-BTfLedr1m1mhpRff9wbIbsA5Fi4= - -ini@~1.3.0: - version "1.3.5" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" - integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== + resolved "https://registry.npmjs.org/ini/-/ini-1.3.4.tgz" + integrity sha1-BTfLedr1m1mhpRff9wbIbsA5Fi4= sha512-VUA7WAWNCWfm6/8f9kAb8Y6iGBWnmCfgFS5dTrv2C38LLm1KUmpY388mCVCJCsMKQomvOQ1oW8/edXdChd9ZXQ== inquirer@^0.12.0: version "0.12.0" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-0.12.0.tgz#1ef2bfd63504df0bc75785fff8c2c41df12f077e" - integrity sha1-HvK/1jUE3wvHV4X/+MLEHfEvB34= + resolved "https://registry.npmjs.org/inquirer/-/inquirer-0.12.0.tgz" + integrity sha1-HvK/1jUE3wvHV4X/+MLEHfEvB34= sha512-bOetEz5+/WpgaW4D1NYOk1aD+JCqRjqu/FwRFgnIfiP7FC/zinsrfyO1vlS3nyH/R7S0IH3BIHBu4DBIDSqiGQ== dependencies: ansi-escapes "^1.1.0" ansi-regex "^2.0.0" @@ -4390,88 +4118,88 @@ inquirer@^0.12.0: strip-ansi "^3.0.0" through "^2.3.6" -invariant@^2.2.0, invariant@^2.2.2: +invariant@^2.2.2: version "2.2.2" - resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360" - integrity sha1-nh9WrArNtr8wMwbzOL47IErmA2A= + resolved "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz" + integrity sha1-nh9WrArNtr8wMwbzOL47IErmA2A= sha512-FUiAFCOgp7bBzHfa/fK+Uc/vqywvdN9Wg3CiTprLcE630mrhxjDS5MlBkHzeI6+bC/6bq9VX/hxBt05fPAT5WA== dependencies: loose-envify "^1.0.0" ip-regex@^1.0.1: version "1.0.3" - resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-1.0.3.tgz#dc589076f659f419c222039a33316f1c7387effd" - integrity sha1-3FiQdvZZ9BnCIgOaMzFvHHOH7/0= + resolved "https://registry.npmjs.org/ip-regex/-/ip-regex-1.0.3.tgz" + integrity sha1-3FiQdvZZ9BnCIgOaMzFvHHOH7/0= sha512-HjpCHTuxbR/6jWJroc/VN+npo5j0T4Vv2TAI5qdEHQx7hsL767MeccGFSsLtF694EiZKTSEqgoeU6DtGFCcuqQ== is-absolute@^0.1.5, is-absolute@^0.1.7: version "0.1.7" - resolved "https://registry.yarnpkg.com/is-absolute/-/is-absolute-0.1.7.tgz#847491119fccb5fb436217cc737f7faad50f603f" - integrity sha1-hHSREZ/MtftDYhfMc39/qtUPYD8= + resolved "https://registry.npmjs.org/is-absolute/-/is-absolute-0.1.7.tgz" + integrity sha1-hHSREZ/MtftDYhfMc39/qtUPYD8= sha512-Xi9/ZSn4NFapG8RP98iNPMOeaV3mXPisxKxzKtHVqr3g56j/fBn+yZmnxSVAA8lmZbl2J9b/a4kJvfU3hqQYgA== dependencies: is-relative "^0.1.0" is-accessor-descriptor@^0.1.6: version "0.1.6" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" - integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= + resolved "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz" + integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A== dependencies: kind-of "^3.0.2" is-accessor-descriptor@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" + resolved "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz" integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== dependencies: kind-of "^6.0.0" is-arrayish@^0.2.1: version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= + resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" + integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== is-binary-path@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" - integrity sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg= + resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz" + integrity sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg= sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q== dependencies: binary-extensions "^1.0.0" is-buffer@^1.1.5: version "1.1.6" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" + resolved "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz" integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== is-bzip2@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-bzip2/-/is-bzip2-1.0.0.tgz#5ee58eaa5a2e9c80e21407bedf23ae5ac091b3fc" - integrity sha1-XuWOqlounIDiFAe+3yOuWsCRs/w= + resolved "https://registry.npmjs.org/is-bzip2/-/is-bzip2-1.0.0.tgz" + integrity sha1-XuWOqlounIDiFAe+3yOuWsCRs/w= sha512-v5DA9z/rmk4UdJtb3N1jYqjvCA5roRVf5Q6vprHOcF6U/98TmAJ/AvbPeRMEOYWDW4eMr/pJj5Fnfe0T2wL1Bg== is-callable@^1.1.1, is-callable@^1.1.3: version "1.1.3" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2" - integrity sha1-hut1OSgF3cM69xySoO7fdO52BLI= + resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.1.3.tgz" + integrity sha1-hut1OSgF3cM69xySoO7fdO52BLI= sha512-gcmUh1kFielP0yJSKD+A1aOPNlI8ZzruhHum+Geq6M3Ibx5JnwcsTJCktWj+reKIjjtefToy/u8YNRUZq4FHuQ== is-data-descriptor@^0.1.4: version "0.1.4" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" - integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= + resolved "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz" + integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg== dependencies: kind-of "^3.0.2" is-data-descriptor@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" + resolved "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz" integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== dependencies: kind-of "^6.0.0" is-date-object@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" - integrity sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY= + resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz" + integrity sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY= sha512-P5rExV1phPi42ppoMWy7V63N3i173RY921l4JJ7zonMSxK+OWGPj76GD+cUKUb68l4vQXcJp2SsG+r/A4ABVzg== is-descriptor@^0.1.0: version "0.1.6" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" + resolved "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz" integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== dependencies: is-accessor-descriptor "^0.1.6" @@ -4480,7 +4208,7 @@ is-descriptor@^0.1.0: is-descriptor@^1.0.0, is-descriptor@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" + resolved "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz" integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== dependencies: is-accessor-descriptor "^1.0.0" @@ -4489,97 +4217,97 @@ is-descriptor@^1.0.0, is-descriptor@^1.0.2: is-dotfile@^1.0.0: version "1.0.3" - resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" - integrity sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE= + resolved "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz" + integrity sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE= sha512-9YclgOGtN/f8zx0Pr4FQYMdibBiTaH3sn52vjYip4ZSf6C4/6RfTEZ+MR4GvKhCxdPh21Bg42/WL55f6KSnKpg== is-equal-shallow@^0.1.3: version "0.1.3" - resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534" - integrity sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ= + resolved "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz" + integrity sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ= sha512-0EygVC5qPvIyb+gSz7zdD5/AAoS6Qrx1e//6N4yv4oNm30kqvdmG66oZFWVlQHUWe5OjP08FuTw2IdT0EOTcYA== dependencies: is-primitive "^2.0.0" is-error@^2.2.0: version "2.2.1" - resolved "https://registry.yarnpkg.com/is-error/-/is-error-2.2.1.tgz#684a96d84076577c98f4cdb40c6d26a5123bf19c" - integrity sha1-aEqW2EB2V3yY9M20DG0mpRI78Zw= + resolved "https://registry.npmjs.org/is-error/-/is-error-2.2.1.tgz" + integrity sha1-aEqW2EB2V3yY9M20DG0mpRI78Zw= sha512-SUqhYt5hqPVwQ+uXLR91g/jeGvf2A7HyVIsM8GwMQCzPg+0bru0AYLke8MycoBEIoFCVtvG/arCFfOYSMyYRVQ== is-extendable@^0.1.0, is-extendable@^0.1.1: version "0.1.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" - integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= + resolved "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz" + integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw== is-extendable@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" + resolved "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz" integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== dependencies: is-plain-object "^2.0.4" is-extglob@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" - integrity sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA= + resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz" + integrity sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA= sha512-7Q+VbVafe6x2T+Tu6NcOf6sRklazEPmBoB3IWk3WdGZM2iGUwU/Oe3Wtq5lSEkDTTlpp8yx+5t4pzO/i9Ty1ww== is-extglob@^2.1.0: version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" - integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= + resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" + integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== is-finite@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" - integrity sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko= + resolved "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz" + integrity sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko= sha512-e+gU0KGrlbqjEcV80SAqg4g7PQYOm3/IrdwAJ+kPwHqGhLKhtuTJGGxGtrsc8RXlHt2A8Vlnv+79Vq2B1GQasg== dependencies: number-is-nan "^1.0.0" is-fullwidth-code-point@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" - integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= + resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz" + integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw== dependencies: number-is-nan "^1.0.0" is-fullwidth-code-point@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" - integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= + resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz" + integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w== is-glob@^2.0.0, is-glob@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" - integrity sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM= + resolved "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz" + integrity sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM= sha512-a1dBeB19NXsf/E0+FHqkagizel/LQw2DjSQpvQrj3zT+jYPpaUCryPnrQajXKFLCMuf4I6FhRpaGtw4lPrG6Eg== dependencies: is-extglob "^1.0.0" is-glob@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" - integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= + resolved "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz" + integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw== dependencies: is-extglob "^2.1.0" is-gzip@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-gzip/-/is-gzip-1.0.0.tgz#6ca8b07b99c77998025900e555ced8ed80879a83" - integrity sha1-bKiwe5nHeZgCWQDlVc7Y7YCHmoM= + resolved "https://registry.npmjs.org/is-gzip/-/is-gzip-1.0.0.tgz" + integrity sha1-bKiwe5nHeZgCWQDlVc7Y7YCHmoM= sha512-rcfALRIb1YewtnksfRIHGcIY93QnK8BIQ/2c9yDYcG/Y6+vRoJuTWBmmSEbyLLYtXm7q35pHOHbZFQBaLrhlWQ== is-invalid-path@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/is-invalid-path/-/is-invalid-path-0.1.0.tgz#307a855b3cf1a938b44ea70d2c61106053714f34" - integrity sha1-MHqFWzzxqTi0TqcNLGEQYFNxTzQ= + resolved "https://registry.npmjs.org/is-invalid-path/-/is-invalid-path-0.1.0.tgz" + integrity sha1-MHqFWzzxqTi0TqcNLGEQYFNxTzQ= sha512-aZMG0T3F34mTg4eTdszcGXx54oiZ4NtHSft3hWNJMGJXUUqdIj3cOZuHcU0nCWWcY3jd7yRe/3AEm3vSNTpBGQ== dependencies: is-glob "^2.0.0" is-module@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591" - integrity sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE= + resolved "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz" + integrity sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE= sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g== is-my-json-valid@^2.10.0: version "2.16.0" - resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.16.0.tgz#f079dd9bfdae65ee2038aae8acbc86ab109e3693" - integrity sha1-8Hndm/2uZe4gOKrorLyGqxCeNpM= + resolved "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.16.0.tgz" + integrity sha1-8Hndm/2uZe4gOKrorLyGqxCeNpM= sha512-6AFGaggK+pZhYW+jXVPxaDgMuZvq0HbinaSrA9ecxKwg1WVKpchZRs0nRkvMiv+hIOFYeyLQ75RVs6Qs+KFk8Q== dependencies: generate-function "^2.0.0" generate-object-property "^1.1.0" @@ -4588,230 +4316,235 @@ is-my-json-valid@^2.10.0: is-natural-number@^2.0.0: version "2.1.1" - resolved "https://registry.yarnpkg.com/is-natural-number/-/is-natural-number-2.1.1.tgz#7d4c5728377ef386c3e194a9911bf57c6dc335e7" - integrity sha1-fUxXKDd+84bD4ZSpkRv1fG3DNec= + resolved "https://registry.npmjs.org/is-natural-number/-/is-natural-number-2.1.1.tgz" + integrity sha1-fUxXKDd+84bD4ZSpkRv1fG3DNec= sha512-88gG/Fur5/8RkhB6UonqOuwQfNJvuaDStW/+r6oIB/hOQPUQe7DiiDQq0fitGOnARt+mQl/S6rg6Vku+i0sA4w== is-natural-number@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/is-natural-number/-/is-natural-number-4.0.1.tgz#ab9d76e1db4ced51e35de0c72ebecf09f734cde8" - integrity sha1-q5124dtM7VHjXeDHLr7PCfc0zeg= + resolved "https://registry.npmjs.org/is-natural-number/-/is-natural-number-4.0.1.tgz" + integrity sha1-q5124dtM7VHjXeDHLr7PCfc0zeg= sha512-Y4LTamMe0DDQIIAlaer9eKebAlDSV6huy+TWhJVPlzZh2o4tRP5SQWFlLn5N0To4mDD22/qdOq+veo1cSISLgQ== is-number@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" - integrity sha1-Afy7s5NGOlSPL0ZszhbezknbkI8= + resolved "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz" + integrity sha1-Afy7s5NGOlSPL0ZszhbezknbkI8= sha512-QUzH43Gfb9+5yckcrSA0VBDwEtDUchrk4F6tfJZQuNzDJbEDB9cZNzSfXGQ1jqmdDY/kl41lUOWM9syA8z8jlg== dependencies: kind-of "^3.0.2" is-number@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" - integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= + resolved "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz" + integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg== dependencies: kind-of "^3.0.2" is-number@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff" + resolved "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz" integrity sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ== is-obj@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" - integrity sha1-PkcprB9f3gJc19g6iW2rn09n2w8= + resolved "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz" + integrity sha1-PkcprB9f3gJc19g6iW2rn09n2w8= sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg== is-object@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/is-object/-/is-object-1.0.1.tgz#8952688c5ec2ffd6b03ecc85e769e02903083470" - integrity sha1-iVJojF7C/9awPsyF52ngKQMINHA= + resolved "https://registry.npmjs.org/is-object/-/is-object-1.0.1.tgz" + integrity sha1-iVJojF7C/9awPsyF52ngKQMINHA= sha512-+XzmTRB/JXoIdK20Ge8K8PRsP5UlthLaVhIRxzIwQ73jRgER8iRw98DilvERx/tSjOHLy9JM4sKUfLRMB5ui0Q== is-object@~0.1.2: version "0.1.2" - resolved "https://registry.yarnpkg.com/is-object/-/is-object-0.1.2.tgz#00efbc08816c33cfc4ac8251d132e10dc65098d7" - integrity sha1-AO+8CIFsM8/ErIJR0TLhDcZQmNc= + resolved "https://registry.npmjs.org/is-object/-/is-object-0.1.2.tgz" + integrity sha1-AO+8CIFsM8/ErIJR0TLhDcZQmNc= sha512-GkfZZlIZtpkFrqyAXPQSRBMsaHAw+CgoKe2HXAkjd/sfoI9+hS8PT4wg2rJxdQyUKr7N2vHJbg7/jQtE5l5vBQ== is-path-cwd@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" - integrity sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0= + resolved "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz" + integrity sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0= sha512-cnS56eR9SPAscL77ik76ATVqoPARTqPIVkMDVxRaWH06zT+6+CzIroYRJ0VVvm0Z1zfAvxvz9i/D3Ppjaqt5Nw== is-path-in-cwd@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz#6477582b8214d602346094567003be8a9eac04dc" - integrity sha1-ZHdYK4IU1gI0YJRWcAO+ip6sBNw= + resolved "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz" + integrity sha1-ZHdYK4IU1gI0YJRWcAO+ip6sBNw= sha512-XSig+5QTx0ReXCURjvzGsLUFT8V36AjyVkc6axI1r5QT3BMVR0MptnXBNU7iyfn2aQIgm8/vP4h58RVIsL7rEw== dependencies: is-path-inside "^1.0.0" is-path-inside@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.0.tgz#fc06e5a1683fbda13de667aff717bbc10a48f37f" - integrity sha1-/AbloWg/vaE95mev9xe7wQpI838= + resolved "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.0.tgz" + integrity sha1-/AbloWg/vaE95mev9xe7wQpI838= sha512-WdiHWLVPHbn+QOQdJXqJS7TtArj7yXvKb8ZyFZ7AaIuW7KOfLLyR5glFAR+b1Q6PhSOTL8lpQvIoV2klU0nE9g== dependencies: path-is-inside "^1.0.1" is-plain-obj@^1.0.0, is-plain-obj@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" - integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= + resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz" + integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg== is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: version "2.0.4" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" + resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz" integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== dependencies: isobject "^3.0.1" is-posix-bracket@^0.1.0: version "0.1.1" - resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4" - integrity sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q= + resolved "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz" + integrity sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q= sha512-Yu68oeXJ7LeWNmZ3Zov/xg/oDBnBK2RNxwYY1ilNJX+tKKZqgPK+qOn/Gs9jEu66KDY9Netf5XLKNGzas/vPfQ== is-primitive@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" - integrity sha1-IHurkWOEmcB7Kt8kCkGochADRXU= + resolved "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz" + integrity sha1-IHurkWOEmcB7Kt8kCkGochADRXU= sha512-N3w1tFaRfk3UrPfqeRyD+GYDASU3W5VinKhlORy8EWVf/sIdDL9GAcew85XmktCfH+ngG7SRXEVDoO18WMdB/Q== is-property@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" - integrity sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ= + resolved "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz" + integrity sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ= sha512-Ks/IoX00TtClbGQr4TWXemAnktAQvYB7HzcCxDGqEZU6oCmb2INHuOoKxbtR+HFkmYWBKv/dOZtGRiAjDhj92g== is-redirect@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-redirect/-/is-redirect-1.0.0.tgz#1d03dded53bd8db0f30c26e4f95d36fc7c87dc24" - integrity sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ= + resolved "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz" + integrity sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ= sha512-cr/SlUEe5zOGmzvj9bUyC4LVvkNVAXu4GytXLNMr1pny+a65MpQ9IJzFHD5vi7FyJgb4qt27+eS3TuQnqB+RQw== is-regex@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" - integrity sha1-VRdIm1RwkbCTDglWVM7SXul+lJE= + resolved "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz" + integrity sha1-VRdIm1RwkbCTDglWVM7SXul+lJE= sha512-WQgPrEkb1mPCWLSlLFuN1VziADSixANugwSkJfPRR73FNWIQQN+tR/t1zWfyES/Y9oag/XBtVsahFdfBku3Kyw== dependencies: has "^1.0.1" is-relative@^0.1.0: version "0.1.3" - resolved "https://registry.yarnpkg.com/is-relative/-/is-relative-0.1.3.tgz#905fee8ae86f45b3ec614bc3c15c869df0876e82" - integrity sha1-kF/uiuhvRbPsYUvDwVyGnfCHboI= + resolved "https://registry.npmjs.org/is-relative/-/is-relative-0.1.3.tgz" + integrity sha1-kF/uiuhvRbPsYUvDwVyGnfCHboI= sha512-wBOr+rNM4gkAZqoLRJI4myw5WzzIdQosFAAbnvfXP5z1LyzgAI3ivOKehC5KfqlQJZoihVhirgtCBj378Eg8GA== is-resolvable@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.0.0.tgz#8df57c61ea2e3c501408d100fb013cf8d6e0cc62" - integrity sha1-jfV8YeouPFAUCNEA+wE8+NbgzGI= + resolved "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.0.0.tgz" + integrity sha1-jfV8YeouPFAUCNEA+wE8+NbgzGI= sha512-9FcOmO8DNEuvfwr4zahMkx1NNWBG+r8MUz+1t608iNqHEjflcvwl368niaBjuIUug3njonc6loJ6r8ReIfwYbQ== dependencies: tryit "^1.0.1" is-retry-allowed@^1.0.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz#11a060568b67339444033d0125a61a20d564fb34" - integrity sha1-EaBgVotnM5REAz0BJaYaINVk+zQ= + resolved "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz" + integrity sha1-EaBgVotnM5REAz0BJaYaINVk+zQ= sha512-leC1bcIRBHjXtaZSM2gAXNeZsIOdDMgq/kHKAVKQ05JTwvb7hnvrHBEm6mnnMRyE7yu+ljNlcG8YUmALCevSxg== is-stream@^1.0.0, is-stream@^1.0.1, is-stream@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" - integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= + resolved "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz" + integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ== is-symbol@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572" - integrity sha1-PMWfAAJRlLarLjjbrmaJJWtmBXI= + resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.1.tgz" + integrity sha1-PMWfAAJRlLarLjjbrmaJJWtmBXI= sha512-Z1cLAG7dXM1vJv8mAGjA+XteO0YzYPwD473+qPAWKycNZxwCH/I56QIohKGYCZSB7j6tajrxi/FvOpAfqGhhRQ== is-tar@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-tar/-/is-tar-1.0.0.tgz#2f6b2e1792c1f5bb36519acaa9d65c0d26fe853d" - integrity sha1-L2suF5LB9bs2UZrKqdZcDSb+hT0= + resolved "https://registry.npmjs.org/is-tar/-/is-tar-1.0.0.tgz" + integrity sha1-L2suF5LB9bs2UZrKqdZcDSb+hT0= sha512-8sR603bS6APKxcdkQ1e5rAC9JDCxM3OlbGJDWv5ajhHqIh6cTaqcpeOTch1iIeHYY4nHEFTgmCiGSLfvmODH4w== is-typedarray@~1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" - integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= + resolved "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz" + integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA== is-url@^1.2.0: version "1.2.2" - resolved "https://registry.yarnpkg.com/is-url/-/is-url-1.2.2.tgz#498905a593bf47cc2d9e7f738372bbf7696c7f26" - integrity sha1-SYkFpZO/R8wtnn9zg3K792lsfyY= + resolved "https://registry.npmjs.org/is-url/-/is-url-1.2.2.tgz" + integrity sha1-SYkFpZO/R8wtnn9zg3K792lsfyY= sha512-00QghlPl39UAMLrkxCdJSLeaMT5Y9LYmi2ZgS3HEcKFjeDHEqUY6x1Zv/Sp+TvyNSf424GvdC9lep/PIcprBDQ== is-utf8@^0.2.0: version "0.2.1" - resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" - integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= + resolved "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz" + integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q== is-valid-glob@^0.3.0: version "0.3.0" - resolved "https://registry.yarnpkg.com/is-valid-glob/-/is-valid-glob-0.3.0.tgz#d4b55c69f51886f9b65c70d6c2622d37e29f48fe" - integrity sha1-1LVcafUYhvm2XHDWwmItN+KfSP4= + resolved "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-0.3.0.tgz" + integrity sha1-1LVcafUYhvm2XHDWwmItN+KfSP4= sha512-CvG8EtJZ8FyzVOGPzrDorzyN65W1Ld8BVnqshRCah6pFIsprGx3dKgFtjLn/Vw9kGqR4OlR84U7yhT9ZVTyWIQ== is-valid-path@^0.1.1: version "0.1.1" - resolved "https://registry.yarnpkg.com/is-valid-path/-/is-valid-path-0.1.1.tgz#110f9ff74c37f663e1ec7915eb451f2db93ac9df" - integrity sha1-EQ+f90w39mPh7HkV60UfLbk6yd8= + resolved "https://registry.npmjs.org/is-valid-path/-/is-valid-path-0.1.1.tgz" + integrity sha1-EQ+f90w39mPh7HkV60UfLbk6yd8= sha512-+kwPrVDu9Ms03L90Qaml+79+6DZHqHyRoANI6IsZJ/g8frhnfchDOBCa0RbQ6/kdHt5CS5OeIEyrYznNuVN+8A== dependencies: is-invalid-path "^0.1.0" is-windows@^0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-0.2.0.tgz#de1aa6d63ea29dd248737b69f1ff8b8002d2108c" - integrity sha1-3hqm1j6indJIc3tp8f+LgALSEIw= + resolved "https://registry.npmjs.org/is-windows/-/is-windows-0.2.0.tgz" + integrity sha1-3hqm1j6indJIc3tp8f+LgALSEIw= sha512-n67eJYmXbniZB7RF4I/FTjK1s6RPOCTxhYrVYLRaCt3lF0mpWZPKr3T2LSZAqyjQsxR2qMmGYXXzK0YWwcPM1Q== is-windows@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" + resolved "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz" integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== is-zip@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-zip/-/is-zip-1.0.0.tgz#47b0a8ff4d38a76431ccfd99a8e15a4c86ba2325" - integrity sha1-R7Co/004p2QxzP2ZqOFaTIa6IyU= + resolved "https://registry.npmjs.org/is-zip/-/is-zip-1.0.0.tgz" + integrity sha1-R7Co/004p2QxzP2ZqOFaTIa6IyU= sha512-aym/dLqHZVMW/+bbNrA/eTeWTyW4fE6koLSoFSsM2GF3/pho7aPCcmHFWFLvzHu7MDuf67domYn36GDwU/cJkQ== is@~0.2.6: version "0.2.7" - resolved "https://registry.yarnpkg.com/is/-/is-0.2.7.tgz#3b34a2c48f359972f35042849193ae7264b63562" - integrity sha1-OzSixI81mXLzUEKEkZOucmS2NWI= + resolved "https://registry.npmjs.org/is/-/is-0.2.7.tgz" + integrity sha1-OzSixI81mXLzUEKEkZOucmS2NWI= sha512-ajQCouIvkcSnl2iRdK70Jug9mohIHVX9uKpoWnl115ov0R5mzBvRrXxrnHbsA+8AdwCwc/sfw7HXmd4I5EJBdQ== + +isarray@^1.0.0, isarray@~1.0.0, isarray@1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" + integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== isarray@0.0.1: version "0.0.1" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" - integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8= - -isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= + resolved "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz" + integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8= sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ== isbuffer@~0.0.0: version "0.0.0" - resolved "https://registry.yarnpkg.com/isbuffer/-/isbuffer-0.0.0.tgz#38c146d9df528b8bf9b0701c3d43cf12df3fc39b" - integrity sha1-OMFG2d9Si4v5sHAcPUPPEt8/w5s= + resolved "https://registry.npmjs.org/isbuffer/-/isbuffer-0.0.0.tgz" + integrity sha1-OMFG2d9Si4v5sHAcPUPPEt8/w5s= sha512-xU+NoHp+YtKQkaM2HsQchYn0sltxMxew0HavMfHbjnucBoTSGbw745tL+Z7QBANleWM1eEQMenEpi174mIeS4g== isemail@2.x.x: version "2.2.1" - resolved "https://registry.yarnpkg.com/isemail/-/isemail-2.2.1.tgz#0353d3d9a62951080c262c2aa0a42b8ea8e9e2a6" - integrity sha1-A1PT2aYpUQgMJiwqoKQrjqjp4qY= + resolved "https://registry.npmjs.org/isemail/-/isemail-2.2.1.tgz" + integrity sha1-A1PT2aYpUQgMJiwqoKQrjqjp4qY= sha512-LPjFxaTatluwGAJlGe4FtRdzg0a9KlXrahHoHAR4HwRNf90Ttwi6sOQ9zj+EoCPmk9yyK+WFUqkm0imUo8UJbw== isexe@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= + resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" + integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== isobject@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= + resolved "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz" + integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA== dependencies: isarray "1.0.0" -isobject@^3.0.0, isobject@^3.0.1: +isobject@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" - integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= + resolved "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz" + integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== + +isobject@^3.0.1: + version "3.0.1" + resolved "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz" + integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== isstream@~0.1.2: version "0.1.2" - resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= + resolved "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz" + integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g== isurl@^1.0.0-alpha5: version "1.0.0" - resolved "https://registry.yarnpkg.com/isurl/-/isurl-1.0.0.tgz#b27f4f49f3cdaa3ea44a0a5b7f3462e6edc39d67" + resolved "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz" integrity sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w== dependencies: has-to-string-tag-x "^1.2.0" @@ -4819,28 +4552,28 @@ isurl@^1.0.0-alpha5: items@2.x.x: version "2.1.1" - resolved "https://registry.yarnpkg.com/items/-/items-2.1.1.tgz#8bd16d9c83b19529de5aea321acaada78364a198" - integrity sha1-i9FtnIOxlSneWuoyGsqtp4NkoZg= + resolved "https://registry.npmjs.org/items/-/items-2.1.1.tgz" + integrity sha1-i9FtnIOxlSneWuoyGsqtp4NkoZg= sha512-FostKmQF+keorBcI+TjGbPHOFdGI39hPqwySgth29nmPXxAdEybGv8vHhyjqQ9yE3vXBuYIXNXg9ozbUX7dH0A== -iterall@1.0.2: +iterall@^1.0.0, iterall@1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/iterall/-/iterall-1.0.2.tgz#41a2e96ce9eda5e61c767ee5dc312373bb046e91" - integrity sha1-QaLpbOntpeYcdn7l3DEjc7sEbpE= + resolved "https://registry.npmjs.org/iterall/-/iterall-1.0.2.tgz" + integrity sha1-QaLpbOntpeYcdn7l3DEjc7sEbpE= sha512-RaKa8RHmSay1GvkTLOYRT8Ju9/Cf0DRK9z7YzS14sID4e2hkP4eknzDhTtzTboO8shZIysbVEEnmjJEHxOVIMQ== -iterall@^1.0.0, iterall@^1.1.0: +iterall@^1.1.0: version "1.1.1" - resolved "https://registry.yarnpkg.com/iterall/-/iterall-1.1.1.tgz#f7f0af11e9a04ec6426260f5019d9fcca4d50214" - integrity sha1-9/CvEemgTsZCYmD1AZ2fzKTVAhQ= + resolved "https://registry.npmjs.org/iterall/-/iterall-1.1.1.tgz" + integrity sha1-9/CvEemgTsZCYmD1AZ2fzKTVAhQ= sha512-Gey5iOxfpkU+zo7i8E2Vr8gQysGukjatb//nP6KVA2ENZdM8qyyLYOGkroWF1MRC30I7NMDVmq+hssnUH5AtRA== jmespath@0.15.0: version "0.15.0" - resolved "https://registry.yarnpkg.com/jmespath/-/jmespath-0.15.0.tgz#a3f222a9aae9f966f5d27c796510e28091764217" - integrity sha1-o/Iiqarp+Wb10nx5ZRDigJF2Qhc= + resolved "https://registry.npmjs.org/jmespath/-/jmespath-0.15.0.tgz" + integrity sha1-o/Iiqarp+Wb10nx5ZRDigJF2Qhc= sha512-+kHj8HXArPfpPEKGLZ+kB5ONRTCiGQXo8RQYL0hH8t6pWXUBBK5KkkQmTNOwKK4LEsd0yTsgtjJVm4UBSZea4w== joi@^9.2.0: version "9.2.0" - resolved "https://registry.yarnpkg.com/joi/-/joi-9.2.0.tgz#3385ac790192130cbe230e802ec02c9215bbfeda" - integrity sha1-M4WseQGSEwy+Iw6ALsAskhW7/to= + resolved "https://registry.npmjs.org/joi/-/joi-9.2.0.tgz" + integrity sha1-M4WseQGSEwy+Iw6ALsAskhW7/to= sha512-54NcYM0TISAuh6NbaC+Ue7v02jSADQm5Fm/1AITBzx4paoCyQPBFbMkZBKY/qa0JBuR6JzQY/XwHrY82fEUbpg== dependencies: hoek "4.x.x" isemail "2.x.x" @@ -4850,52 +4583,47 @@ joi@^9.2.0: jquery@3.2.1: version "3.2.1" - resolved "https://registry.yarnpkg.com/jquery/-/jquery-3.2.1.tgz#5c4d9de652af6cd0a770154a631bba12b015c787" - integrity sha1-XE2d5lKvbNCncBVKYxu6ErAVx4c= + resolved "https://registry.npmjs.org/jquery/-/jquery-3.2.1.tgz" + integrity sha1-XE2d5lKvbNCncBVKYxu6ErAVx4c= sha512-iQUctXqe/nSa7hshPkQnJaJEUfxM139//hg2nJj+wsqVvd/YgXALR3jTNGh7BylgsyfcC8r4i2cJrClGBkDu5Q== js-string-escape@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/js-string-escape/-/js-string-escape-1.0.1.tgz#e2625badbc0d67c7533e9edc1068c587ae4137ef" - integrity sha1-4mJbrbwNZ8dTPp7cEGjFh65BN+8= + resolved "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz" + integrity sha1-4mJbrbwNZ8dTPp7cEGjFh65BN+8= sha512-Smw4xcfIQ5LVjAOuJCvN/zIodzA/BBSsluuoSykP+lUvScIi4U6RJLfwHet5cxFnCswUjISV8oAXaqaJDY3chg== -js-tokens@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.1.tgz#08e9f132484a2c45a30907e9dc4d5567b7f114d7" - integrity sha1-COnxMkhKLEWjCQfp3E1VZ7fxFNc= - -js-tokens@^3.0.2: +js-tokens@^3.0.0, js-tokens@^3.0.2: version "3.0.2" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" - integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= + resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz" + integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= sha512-RjTcuD4xjtthQkaWH7dFlH85L+QaVtSoOyGdZ3g6HFhS9dFNDfLyqgm2NFe2X6cQpeFmt0452FJjFG5UameExg== js-tokens@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== js-yaml@^3.5.1: version "3.8.2" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.8.2.tgz#02d3e2c0f6beab20248d412c352203827d786721" - integrity sha1-AtPiwPa+qyAkjUEsNSIDgn14ZyE= + resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.8.2.tgz" + integrity sha1-AtPiwPa+qyAkjUEsNSIDgn14ZyE= sha512-9I4FTrWjv8PQbXPB9VfD2Ls3rrZS1JT0+ItFbyl0DNZV5nFBduBtugZr497pWmu5BgYrugScShqcQySGAipNag== dependencies: argparse "^1.0.7" esprima "^3.1.1" js2xmlparser@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/js2xmlparser/-/js2xmlparser-4.0.0.tgz#ae14cc711b2892083eed6e219fbc993d858bc3a5" + resolved "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-4.0.0.tgz" integrity sha512-WuNgdZOXVmBk5kUPMcTcVUpbGRzLfNkv7+7APq7WiDihpXVKrgxo6wwRpRl9OQeEBgKCVk9mR7RbzrnNWC8oBw== dependencies: xmlcreate "^2.0.0" jsbn@~0.1.0: version "0.1.1" - resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= + resolved "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz" + integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg== jsdoc-api@^5.0.3: version "5.0.3" - resolved "https://registry.yarnpkg.com/jsdoc-api/-/jsdoc-api-5.0.3.tgz#3ffa7998781b2d6235356dc24ab84647aaa38349" + resolved "https://registry.npmjs.org/jsdoc-api/-/jsdoc-api-5.0.3.tgz" integrity sha512-7F/FR1DCRmRFlyuccpeRwW/4H5GtUD9detREDO/gxLjyEaVfRdD1JDzwZ4tMg32f0jP97PCDTy9CdSr8mW0txQ== dependencies: array-back "^4.0.0" @@ -4910,15 +4638,15 @@ jsdoc-api@^5.0.3: jsdoc-export-default-interop@0.3.1: version "0.3.1" - resolved "https://registry.yarnpkg.com/jsdoc-export-default-interop/-/jsdoc-export-default-interop-0.3.1.tgz#462fa9f9b4a2ab06a0f4d0624143d02e5ba2d05f" - integrity sha1-Ri+p+bSiqwag9NBiQUPQLlui0F8= + resolved "https://registry.npmjs.org/jsdoc-export-default-interop/-/jsdoc-export-default-interop-0.3.1.tgz" + integrity sha1-Ri+p+bSiqwag9NBiQUPQLlui0F8= sha512-8dXuye0ZZcfHO/u3xk3A4TSb2LgWo6HbhoVIj1Igrrpq4t61UnjMIXiqpq6xj4oQgrZHgSy8AWdhNB899BcfFA== dependencies: in-publish "^2.0.0" lodash "^4.0.1" jsdoc-parse@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/jsdoc-parse/-/jsdoc-parse-4.0.1.tgz#07949b13b1659c2bbc5217560d77b46a060cb86d" + resolved "https://registry.npmjs.org/jsdoc-parse/-/jsdoc-parse-4.0.1.tgz" integrity sha512-qIObw8yqYZjrP2qxWROB5eLQFLTUX2jRGLhW9hjo2CC2fQVlskidCIzjCoctwsDvauBp2a/lR31jkSleczSo8Q== dependencies: array-back "^4.0.0" @@ -4930,7 +4658,7 @@ jsdoc-parse@^4.0.1: jsdoc-to-markdown@5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/jsdoc-to-markdown/-/jsdoc-to-markdown-5.0.1.tgz#3fcc32385c69d2ebb7174cc91ff7e8e27fe01f92" + resolved "https://registry.npmjs.org/jsdoc-to-markdown/-/jsdoc-to-markdown-5.0.1.tgz" integrity sha512-l+2sPeNM0V4iYHMS5IGhwKDtCTAW0sF4PAXX1AX9f7r6xfszTB8bqlqNR8ymvU85L9U2kEQ/Qemd5NrtX5DR0w== dependencies: array-back "^4.0.0" @@ -4941,9 +4669,9 @@ jsdoc-to-markdown@5.0.1: jsdoc-parse "^4.0.1" walk-back "^3.0.1" -jsdoc@3.6.3, jsdoc@^3.6.3: +jsdoc@^3.6.3, jsdoc@3.6.3: version "3.6.3" - resolved "https://registry.yarnpkg.com/jsdoc/-/jsdoc-3.6.3.tgz#dccea97d0e62d63d306b8b3ed1527173b5e2190d" + resolved "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.3.tgz" integrity sha512-Yf1ZKA3r9nvtMWHO1kEuMZTlHOF8uoQ0vyo5eH7SQy5YeIiHM+B0DgKnn+X6y6KDYZcF7G2SPkKF+JORCXWE/A== dependencies: "@babel/parser" "^7.4.4" @@ -4963,74 +4691,74 @@ jsdoc@3.6.3, jsdoc@^3.6.3: jsesc@^1.3.0: version "1.3.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" - integrity sha1-RsP+yMGJKxKwgz25vHYiF226s0s= + resolved "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz" + integrity sha1-RsP+yMGJKxKwgz25vHYiF226s0s= sha512-Mke0DA0QjUWuJlhsE0ZPPhYiJkRap642SmI/4ztCFaUs6V2AiH1sfecc+57NgaryfAA2VR3v6O+CSjC1jZJKOA== jsesc@^2.5.1: version "2.5.2" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" + resolved "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz" integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== jsesc@~0.5.0: version "0.5.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" - integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= + resolved "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz" + integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA== json-schema@0.2.3: version "0.2.3" - resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" - integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= + resolved "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz" + integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= sha512-a3xHnILGMtk+hDOqNwHzF6e2fNbiMrXZvxKQiEv2MlgQP+pjIOzqAmKYD2mDpXYE/44M7g+n9p2bKkYWDUcXCQ== json-stable-stringify@^1.0.0, json-stable-stringify@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" - integrity sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8= + resolved "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz" + integrity sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8= sha512-i/J297TW6xyj7sDFa7AmBPkQvLIxWr2kKPWI26tXydnZrzVAocNqn5DMNT1Mzk0vit1V5UkRM7C1KdVNp7Lmcg== dependencies: jsonify "~0.0.0" json-stringify-safe@~5.0.0, json-stringify-safe@~5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" - integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= + resolved "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz" + integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA== json3@3.3.2: version "3.3.2" - resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.2.tgz#3c0434743df93e2f5c42aee7b19bcb483575f4e1" - integrity sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE= + resolved "https://registry.npmjs.org/json3/-/json3-3.3.2.tgz" + integrity sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE= sha512-I5YLeauH3rIaE99EE++UeH2M2gSYo8/2TqDac7oZEH6D/DSQ4Woa628Qrfj1X9/OY5Mk5VvIDQaKCDchXaKrmA== json5@^0.5.1: version "0.5.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" - integrity sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE= + resolved "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz" + integrity sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE= sha512-4xrs1aW+6N5DalkqSVA8fxh458CXvR99WU8WLKmq4v8eWAL86Xo3BVqyd3SkA9wEVjCMqyvvRRkshAdOnBp5rw== json5@^2.1.2: version "2.2.0" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3" + resolved "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz" integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA== dependencies: minimist "^1.2.5" jsonfile@^2.1.0: version "2.4.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-2.4.0.tgz#3736a2b428b87bbda0cc83b53fa3d633a35c2ae8" - integrity sha1-NzaitCi4e72gzIO1P6PWM6NcKug= + resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz" + integrity sha1-NzaitCi4e72gzIO1P6PWM6NcKug= sha512-PKllAqbgLgxHaj8TElYymKCAgrASebJrWpTnEkOaTowt23VKXXN0sUeriJ+eh7y6ufb/CC5ap11pz71/cM0hUw== optionalDependencies: graceful-fs "^4.1.6" jsonify@~0.0.0: version "0.0.0" - resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" - integrity sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM= + resolved "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz" + integrity sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM= sha512-trvBk1ki43VZptdBI5rIlG4YOzyeH/WefQt5rj1grasPn4iiZWKet8nkgc4GlsAylaztn0qZfUYOiTsASJFdNA== jsonpointer@^4.0.0: version "4.0.1" - resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9" - integrity sha1-T9kss04OnbPInIYi7PUfm5eMbLk= + resolved "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.0.1.tgz" + integrity sha1-T9kss04OnbPInIYi7PUfm5eMbLk= sha512-K7vR/jmvXsP04hvItAziqPeWmGceLWye9tkqbI+zFCvD4aDnL94BbGHggtQTfqRxbsgGWb4ospGQU8Rd7CEzPg== jsprim@^1.2.2: version "1.4.1" - resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" - integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI= + resolved "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz" + integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI= sha512-4Dj8Rf+fQ+/Pn7C5qeEX02op1WfOss3PKTE9Nsop3Dx+6UPxlm1dr/og7o2cRa5hNN07CACr4NFzRLtj/rjWog== dependencies: assert-plus "1.0.0" extsprintf "1.3.0" @@ -5039,67 +4767,72 @@ jsprim@^1.2.2: jsx-ast-utils@^1.0.0, jsx-ast-utils@^1.3.1: version "1.4.0" - resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-1.4.0.tgz#5afe38868f56bc8cc7aeaef0100ba8c75bd12591" - integrity sha1-Wv44ho9WvIzHrq7wEAuox1vRJZE= + resolved "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-1.4.0.tgz" + integrity sha1-Wv44ho9WvIzHrq7wEAuox1vRJZE= sha512-VjcxqgAL3BytKWAxGtbO5Qy9QBb6/Tju88C1EmAd1j5DuERed9+RqvWF5EpHyD1sDqe2tQO68DGZds1X+no2lQ== dependencies: object-assign "^4.1.0" kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: version "3.2.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" - integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= + resolved "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz" + integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ== dependencies: is-buffer "^1.1.5" kind-of@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" - integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc= + resolved "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz" + integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc= sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw== dependencies: is-buffer "^1.1.5" kind-of@^5.0.0: version "5.1.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" + resolved "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz" integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== -kind-of@^6.0.0, kind-of@^6.0.2: +kind-of@^6.0.0: + version "6.0.2" + resolved "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz" + integrity sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA== + +kind-of@^6.0.2: version "6.0.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051" + resolved "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz" integrity sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA== klaw@^1.0.0: version "1.3.1" - resolved "https://registry.yarnpkg.com/klaw/-/klaw-1.3.1.tgz#4088433b46b3b1ba259d78785d8e96f73ba02439" - integrity sha1-QIhDO0azsbolnXh4XY6W9zugJDk= + resolved "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz" + integrity sha1-QIhDO0azsbolnXh4XY6W9zugJDk= sha512-TED5xi9gGQjGpNnvRWknrwAB1eL5GciPfVFOt3Vk1OJCVDQbzuSfrF3hkUQKlsgKrG1F+0t5W0m+Fje1jIt8rw== optionalDependencies: graceful-fs "^4.1.9" klaw@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/klaw/-/klaw-3.0.0.tgz#b11bec9cf2492f06756d6e809ab73a2910259146" + resolved "https://registry.npmjs.org/klaw/-/klaw-3.0.0.tgz" integrity sha512-0Fo5oir+O9jnXu5EefYbVK+mHMBeEVEy2cmctR1O1NECcCkPRreJKrS6Qt/j3KC2C148Dfo9i3pCmCMsdqGr0g== dependencies: graceful-fs "^4.1.9" lazy-cache@^2.0.1: version "2.0.2" - resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-2.0.2.tgz#b9190a4f913354694840859f8a8f7084d8822264" - integrity sha1-uRkKT5EzVGlIQIWfio9whNiCImQ= + resolved "https://registry.npmjs.org/lazy-cache/-/lazy-cache-2.0.2.tgz" + integrity sha1-uRkKT5EzVGlIQIWfio9whNiCImQ= sha512-7vp2Acd2+Kz4XkzxGxaB1FWOi8KjWIWsgdfD5MCb86DWvlLqhRPM+d6Pro3iNEL5VT9mstz5hKAlcd+QR6H3aA== dependencies: set-getter "^0.1.0" lazystream@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/lazystream/-/lazystream-1.0.0.tgz#f6995fe0f820392f61396be89462407bb77168e4" - integrity sha1-9plf4PggOS9hOWvolGJAe7dxaOQ= + resolved "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz" + integrity sha1-9plf4PggOS9hOWvolGJAe7dxaOQ= sha512-/330KFbmC/zKdtZoVDRwvkJ8snrJyBPfoZ39zsJl2O24HOE1CTNiEbeZmHXmjBVxTSSv7JlJEXPYhU83DhA2yg== dependencies: readable-stream "^2.0.5" level-blobs@^0.1.7: version "0.1.7" - resolved "https://registry.yarnpkg.com/level-blobs/-/level-blobs-0.1.7.tgz#9ab9b97bb99f1edbf9f78a3433e21ed56386bdaf" - integrity sha1-mrm5e7mfHtv594o0M+Ie1WOGva8= + resolved "https://registry.npmjs.org/level-blobs/-/level-blobs-0.1.7.tgz" + integrity sha1-mrm5e7mfHtv594o0M+Ie1WOGva8= sha512-n0iYYCGozLd36m/Pzm206+brIgXP8mxPZazZ6ZvgKr+8YwOZ8/PPpYC5zMUu2qFygRN8RO6WC/HH3XWMW7RMVg== dependencies: level-peek "1.0.6" once "^1.3.0" @@ -5107,8 +4840,8 @@ level-blobs@^0.1.7: level-filesystem@^1.0.1: version "1.2.0" - resolved "https://registry.yarnpkg.com/level-filesystem/-/level-filesystem-1.2.0.tgz#a00aca9919c4a4dfafdca6a8108d225aadff63b3" - integrity sha1-oArKmRnEpN+v3KaoEI0iWq3/Y7M= + resolved "https://registry.npmjs.org/level-filesystem/-/level-filesystem-1.2.0.tgz" + integrity sha1-oArKmRnEpN+v3KaoEI0iWq3/Y7M= sha512-PhXDuCNYpngpxp3jwMT9AYBMgOvB6zxj3DeuIywNKmZqFj2djj9XfT2XDVslfqmo0Ip79cAd3SBy3FsfOZPJ1g== dependencies: concat-stream "^1.4.4" errno "^0.1.1" @@ -5120,29 +4853,29 @@ level-filesystem@^1.0.1: once "^1.3.0" xtend "^2.2.0" +level-fix-range@~1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/level-fix-range/-/level-fix-range-1.0.2.tgz" + integrity sha1-vxW5Fa422EcMgh6IPd95zRZCCCg= sha512-9llaVn6uqBiSlBP+wKiIEoBa01FwEISFgHSZiyec2S0KpyLUkGR4afW/FCZ/X8y+QJvzS0u4PGOlZDdh1/1avQ== + level-fix-range@2.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/level-fix-range/-/level-fix-range-2.0.0.tgz#c417d62159442151a19d9a2367868f1724c2d548" - integrity sha1-xBfWIVlEIVGhnZojZ4aPFyTC1Ug= + resolved "https://registry.npmjs.org/level-fix-range/-/level-fix-range-2.0.0.tgz" + integrity sha1-xBfWIVlEIVGhnZojZ4aPFyTC1Ug= sha512-WrLfGWgwWbYPrHsYzJau+5+te89dUbENBg3/lsxOs4p2tYOhCHjbgXxBAj4DFqp3k/XBwitcRXoCh8RoCogASA== dependencies: clone "~0.1.9" -level-fix-range@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/level-fix-range/-/level-fix-range-1.0.2.tgz#bf15b915ae36d8470c821e883ddf79cd16420828" - integrity sha1-vxW5Fa422EcMgh6IPd95zRZCCCg= - "level-hooks@>=4.4.0 <5": version "4.5.0" - resolved "https://registry.yarnpkg.com/level-hooks/-/level-hooks-4.5.0.tgz#1b9ae61922930f3305d1a61fc4d83c8102c0dd93" - integrity sha1-G5rmGSKTDzMF0aYfxNg8gQLA3ZM= + resolved "https://registry.npmjs.org/level-hooks/-/level-hooks-4.5.0.tgz" + integrity sha1-G5rmGSKTDzMF0aYfxNg8gQLA3ZM= sha512-fxLNny/vL/G4PnkLhWsbHnEaRi+A/k8r5EH/M77npZwYL62RHi2fV0S824z3QdpAk6VTgisJwIRywzBHLK4ZVA== dependencies: string-range "~1.2" level-js@^2.1.3: version "2.2.4" - resolved "https://registry.yarnpkg.com/level-js/-/level-js-2.2.4.tgz#bc055f4180635d4489b561c9486fa370e8c11697" - integrity sha1-vAVfQYBjXUSJtWHJSG+jcOjBFpc= + resolved "https://registry.npmjs.org/level-js/-/level-js-2.2.4.tgz" + integrity sha1-vAVfQYBjXUSJtWHJSG+jcOjBFpc= sha512-lZtjt4ZwHE00UMC1vAb271p9qzg8vKlnDeXfIesH3zL0KxhHRDjClQLGLWhyR0nK4XARnd4wc/9eD1ffd4PshQ== dependencies: abstract-leveldown "~0.12.0" idb-wrapper "^1.5.0" @@ -5151,17 +4884,17 @@ level-js@^2.1.3: typedarray-to-buffer "~1.0.0" xtend "~2.1.2" -level-peek@1.0.6, level-peek@^1.0.6: +level-peek@^1.0.6, level-peek@1.0.6: version "1.0.6" - resolved "https://registry.yarnpkg.com/level-peek/-/level-peek-1.0.6.tgz#bec51c72a82ee464d336434c7c876c3fcbcce77f" - integrity sha1-vsUccqgu5GTTNkNMfIdsP8vM538= + resolved "https://registry.npmjs.org/level-peek/-/level-peek-1.0.6.tgz" + integrity sha1-vsUccqgu5GTTNkNMfIdsP8vM538= sha512-TKEzH5TxROTjQxWMczt9sizVgnmJ4F3hotBI48xCTYvOKd/4gA/uY0XjKkhJFo6BMic8Tqjf6jFMLWeg3MAbqQ== dependencies: level-fix-range "~1.0.2" level-sublevel@^5.2.0: version "5.2.3" - resolved "https://registry.yarnpkg.com/level-sublevel/-/level-sublevel-5.2.3.tgz#744c12c72d2e72be78dde3b9b5cd84d62191413a" - integrity sha1-dEwSxy0ucr543eO5tc2E1iGRQTo= + resolved "https://registry.npmjs.org/level-sublevel/-/level-sublevel-5.2.3.tgz" + integrity sha1-dEwSxy0ucr543eO5tc2E1iGRQTo= sha512-tO8jrFp+QZYrxx/Gnmjawuh1UBiifpvKNAcm4KCogesWr1Nm2+ckARitf+Oo7xg4OHqMW76eAqQ204BoIlscjA== dependencies: level-fix-range "2.0" level-hooks ">=4.4.0 <5" @@ -5170,8 +4903,8 @@ level-sublevel@^5.2.0: levelup@^0.18.2: version "0.18.6" - resolved "https://registry.yarnpkg.com/levelup/-/levelup-0.18.6.tgz#e6a01cb089616c8ecc0291c2a9bd3f0c44e3e5eb" - integrity sha1-5qAcsIlhbI7MApHCqb0/DETj5es= + resolved "https://registry.npmjs.org/levelup/-/levelup-0.18.6.tgz" + integrity sha1-5qAcsIlhbI7MApHCqb0/DETj5es= sha512-uB0auyRqIVXx+hrpIUtol4VAPhLRcnxcOsd2i2m6rbFIDarO5dnrupLOStYYpEcu8ZT087Z9HEuYw1wjr6RL6Q== dependencies: bl "~0.8.1" deferred-leveldown "~0.2.0" @@ -5183,101 +4916,101 @@ levelup@^0.18.2: levn@^0.3.0, levn@~0.3.0: version "0.3.0" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" - integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= + resolved "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz" + integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA== dependencies: prelude-ls "~1.1.2" type-check "~0.3.2" linkify-it@^2.0.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/linkify-it/-/linkify-it-2.2.0.tgz#e3b54697e78bf915c70a38acd78fd09e0058b1cf" + resolved "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz" integrity sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw== dependencies: uc.micro "^1.0.1" livereload-js@^2.2.2: version "2.2.2" - resolved "https://registry.yarnpkg.com/livereload-js/-/livereload-js-2.2.2.tgz#6c87257e648ab475bc24ea257457edcc1f8d0bc2" - integrity sha1-bIclfmSKtHW8JOoldFftzB+NC8I= + resolved "https://registry.npmjs.org/livereload-js/-/livereload-js-2.2.2.tgz" + integrity sha1-bIclfmSKtHW8JOoldFftzB+NC8I= sha512-Hs8nlD20MQQKyj2EvdtvHxJV3zvRhQBo/oxA6rmHh9jmgZXqTLCe6ZqJn0RWUCRGq0ak3voMjA19YetulCoDLQ== lodash._baseassign@^3.0.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz#8c38a099500f215ad09e59f1722fd0c52bfe0a4e" - integrity sha1-jDigmVAPIVrQnlnxci/QxSv+Ck4= + resolved "https://registry.npmjs.org/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz" + integrity sha1-jDigmVAPIVrQnlnxci/QxSv+Ck4= sha512-t3N26QR2IdSN+gqSy9Ds9pBu/J1EAFEshKlUHpJG3rvyJOYgcELIxcIeKKfZk7sjOz11cFfzJRsyFry/JyabJQ== dependencies: lodash._basecopy "^3.0.0" lodash.keys "^3.0.0" lodash._basecopy@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36" - integrity sha1-jaDmqHbPNEwK2KVIghEd08XHyjY= + resolved "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz" + integrity sha1-jaDmqHbPNEwK2KVIghEd08XHyjY= sha512-rFR6Vpm4HeCK1WPGvjZSJ+7yik8d8PVUdCJx5rT2pogG4Ve/2ZS7kfmO5l5T2o5V2mqlNIfSF5MZlr1+xOoYQQ== lodash._basecreate@^3.0.0: version "3.0.3" - resolved "https://registry.yarnpkg.com/lodash._basecreate/-/lodash._basecreate-3.0.3.tgz#1bc661614daa7fc311b7d03bf16806a0213cf821" - integrity sha1-G8ZhYU2qf8MRt9A78WgGoCE8+CE= + resolved "https://registry.npmjs.org/lodash._basecreate/-/lodash._basecreate-3.0.3.tgz" + integrity sha1-G8ZhYU2qf8MRt9A78WgGoCE8+CE= sha512-EDem6C9iQpn7fxnGdmhXmqYGjCkStmDXT4AeyB2Ph8WKbglg4aJZczNkQglj+zWXcOEEkViK8THuV2JvugW47g== lodash._basetostring@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz#d1861d877f824a52f669832dcaf3ee15566a07d5" - integrity sha1-0YYdh3+CSlL2aYMtyvPuFVZqB9U= + resolved "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz" + integrity sha1-0YYdh3+CSlL2aYMtyvPuFVZqB9U= sha512-mTzAr1aNAv/i7W43vOR/uD/aJ4ngbtsRaCubp2BfZhlGU/eORUjg/7F6X0orNMdv33JOrdgGybtvMN/po3EWrA== lodash._basevalues@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz#5b775762802bde3d3297503e26300820fdf661b7" - integrity sha1-W3dXYoAr3j0yl1A+JjAIIP32Ybc= + resolved "https://registry.npmjs.org/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz" + integrity sha1-W3dXYoAr3j0yl1A+JjAIIP32Ybc= sha512-H94wl5P13uEqlCg7OcNNhMQ8KvWSIyqXzOPusRgHC9DK3o54P6P3xtbXlVbRABG4q5gSmp7EDdJ0MSuW9HX6Mg== lodash._getnative@^3.0.0: version "3.9.1" - resolved "https://registry.yarnpkg.com/lodash._getnative/-/lodash._getnative-3.9.1.tgz#570bc7dede46d61cdcde687d65d3eecbaa3aaff5" - integrity sha1-VwvH3t5G1hzc3mh9ZdPuy6o6r/U= + resolved "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz" + integrity sha1-VwvH3t5G1hzc3mh9ZdPuy6o6r/U= sha512-RrL9VxMEPyDMHOd9uFbvMe8X55X16/cGM5IgOKgRElQZutpX89iS6vwl64duTV1/16w5JY7tuFNXqoekmh1EmA== lodash._isiterateecall@^3.0.0: version "3.0.9" - resolved "https://registry.yarnpkg.com/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz#5203ad7ba425fae842460e696db9cf3e6aac057c" - integrity sha1-UgOte6Ql+uhCRg5pbbnPPmqsBXw= + resolved "https://registry.npmjs.org/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz" + integrity sha1-UgOte6Ql+uhCRg5pbbnPPmqsBXw= sha512-De+ZbrMu6eThFti/CSzhRvTKMgQToLxbij58LMfM8JnYDNSOjkjTCIaa8ixglOeGh2nyPlakbt5bJWJ7gvpYlQ== lodash._reescape@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._reescape/-/lodash._reescape-3.0.0.tgz#2b1d6f5dfe07c8a355753e5f27fac7f1cde1616a" - integrity sha1-Kx1vXf4HyKNVdT5fJ/rH8c3hYWo= + resolved "https://registry.npmjs.org/lodash._reescape/-/lodash._reescape-3.0.0.tgz" + integrity sha1-Kx1vXf4HyKNVdT5fJ/rH8c3hYWo= sha512-Sjlavm5y+FUVIF3vF3B75GyXrzsfYV8Dlv3L4mEpuB9leg8N6yf/7rU06iLPx9fY0Mv3khVp9p7Dx0mGV6V5OQ== lodash._reevaluate@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz#58bc74c40664953ae0b124d806996daca431e2ed" - integrity sha1-WLx0xAZklTrgsSTYBpltrKQx4u0= + resolved "https://registry.npmjs.org/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz" + integrity sha1-WLx0xAZklTrgsSTYBpltrKQx4u0= sha512-OrPwdDc65iJiBeUe5n/LIjd7Viy99bKwDdk7Z5ljfZg0uFRFlfQaCy9tZ4YMAag9WAZmlVpe1iZrkIMMSMHD3w== lodash._reinterpolate@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" - integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= + resolved "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz" + integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA== lodash._root@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/lodash._root/-/lodash._root-3.0.1.tgz#fba1c4524c19ee9a5f8136b4609f017cf4ded692" - integrity sha1-+6HEUkwZ7ppfgTa0YJ8BfPTe1pI= + resolved "https://registry.npmjs.org/lodash._root/-/lodash._root-3.0.1.tgz" + integrity sha1-+6HEUkwZ7ppfgTa0YJ8BfPTe1pI= sha512-O0pWuFSK6x4EXhM1dhZ8gchNtG7JMqBtrHdoUFUWXD7dJnNSUze1GuyQr5sOs0aCvgGeI3o/OJW8f4ca7FDxmQ== lodash.assign@^4.0.0: version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7" - integrity sha1-DZnzzNem0mHRm9rrkkUAXShYCOc= + resolved "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz" + integrity sha1-DZnzzNem0mHRm9rrkkUAXShYCOc= sha512-hFuH8TY+Yji7Eja3mGiuAxBqLagejScbG8GbG0j6o9vzn0YL14My+ktnqtZgFTosKymC9/44wP6s7xyuLfnClw== lodash.camelcase@^4.3.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" - integrity sha1-soqmKIorn8ZRA1x3EfZathkDMaY= + resolved "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz" + integrity sha1-soqmKIorn8ZRA1x3EfZathkDMaY= sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA== lodash.cond@^4.3.0: version "4.5.2" - resolved "https://registry.yarnpkg.com/lodash.cond/-/lodash.cond-4.5.2.tgz#f471a1da486be60f6ab955d17115523dd1d255d5" - integrity sha1-9HGh2khr5g9quVXRcRVSPdHSVdU= + resolved "https://registry.npmjs.org/lodash.cond/-/lodash.cond-4.5.2.tgz" + integrity sha1-9HGh2khr5g9quVXRcRVSPdHSVdU= sha512-RWjUhzGbzG/KfDwk+onqdXvrsNv47G9UCMJgSKalPTSqJQyxZhQophG9jgqLf+15TIbZ5a/yG2YKOWsH3dVy9A== lodash.create@3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/lodash.create/-/lodash.create-3.1.1.tgz#d7f2849f0dbda7e04682bb8cd72ab022461debe7" - integrity sha1-1/KEnw29p+BGgruM1yqwIkYd6+c= + resolved "https://registry.npmjs.org/lodash.create/-/lodash.create-3.1.1.tgz" + integrity sha1-1/KEnw29p+BGgruM1yqwIkYd6+c= sha512-IUfOYwDEbI8JbhW6psW+Ig01BOVK67dTSCUAbS58M0HBkPcAv/jHuxD+oJVP2tUCo3H9L6f/8GM6rxwY+oc7/w== dependencies: lodash._baseassign "^3.0.0" lodash._basecreate "^3.0.0" @@ -5285,55 +5018,55 @@ lodash.create@3.1.1: lodash.endswith@^4.0.1: version "4.2.1" - resolved "https://registry.yarnpkg.com/lodash.endswith/-/lodash.endswith-4.2.1.tgz#fed59ac1738ed3e236edd7064ec456448b37bc09" - integrity sha1-/tWawXOO0+I27dcGTsRWRIs3vAk= + resolved "https://registry.npmjs.org/lodash.endswith/-/lodash.endswith-4.2.1.tgz" + integrity sha1-/tWawXOO0+I27dcGTsRWRIs3vAk= sha512-pegckn1D2ohyUKt7OHrp7GpJVNnndjE+FpzULQ0pjQvbjdktdWGmKVth5wdSYWHzQSZA7OSGbIo0/AuwTeX1pA== lodash.escape@^3.0.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-3.2.0.tgz#995ee0dc18c1b48cc92effae71a10aab5b487698" - integrity sha1-mV7g3BjBtIzJLv+ucaEKq1tIdpg= + resolved "https://registry.npmjs.org/lodash.escape/-/lodash.escape-3.2.0.tgz" + integrity sha1-mV7g3BjBtIzJLv+ucaEKq1tIdpg= sha512-n1PZMXgaaDWZDSvuNZ/8XOcYO2hOKDqZel5adtR30VKQAtoWs/5AOeFA0vPV8moiPzlqe7F4cP2tzpFewQyelQ== dependencies: lodash._root "^3.0.0" lodash.find@^4.3.0: version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.find/-/lodash.find-4.6.0.tgz#cb0704d47ab71789ffa0de8b97dd926fb88b13b1" - integrity sha1-ywcE1Hq3F4n/oN6Ll92Sb7iLE7E= + resolved "https://registry.npmjs.org/lodash.find/-/lodash.find-4.6.0.tgz" + integrity sha1-ywcE1Hq3F4n/oN6Ll92Sb7iLE7E= sha512-yaRZoAV3Xq28F1iafWN1+a0rflOej93l1DQUejs3SZ41h2O9UJBoS9aueGjPDgAl4B6tPC0NuuchLKaDQQ3Isg== lodash.findindex@^4.3.0: version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.findindex/-/lodash.findindex-4.6.0.tgz#a3245dee61fb9b6e0624b535125624bb69c11106" - integrity sha1-oyRd7mH7m24GJLU1ElYku2nBEQY= + resolved "https://registry.npmjs.org/lodash.findindex/-/lodash.findindex-4.6.0.tgz" + integrity sha1-oyRd7mH7m24GJLU1ElYku2nBEQY= sha512-9er6Ccz6sEST3bHFtUrCFWk14nE8cdL/RoW1RRDV1BxqN3qsmsT56L14jhfctAqhVPVcdJw4MRxEaVoAK+JVvw== lodash.foreach@^4.5.0: version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.foreach/-/lodash.foreach-4.5.0.tgz#1a6a35eace401280c7f06dddec35165ab27e3e53" - integrity sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM= + resolved "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz" + integrity sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM= sha512-aEXTF4d+m05rVOAUG3z4vZZ4xVexLKZGF0lIxuHZ1Hplpk/3B6Z1+/ICICYRLm7c41Z2xiejbkCkJoTlypoXhQ== lodash.isarguments@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" - integrity sha1-L1c9hcaiQon/AGY7SRwdM4/zRYo= + resolved "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz" + integrity sha1-L1c9hcaiQon/AGY7SRwdM4/zRYo= sha512-chi4NHZlZqZD18a0imDHnZPrDeBbTtVN7GXMwuGdRH9qotxAjYs3aVLKc7zNOG9eddR5Ksd8rvFEBc9SsggPpg== lodash.isarray@^3.0.0: version "3.0.4" - resolved "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55" - integrity sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U= + resolved "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz" + integrity sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U= sha512-JwObCrNJuT0Nnbuecmqr5DgtuBppuCvGD9lxjFpAzwnVtdGoDQ1zig+5W8k5/6Gcn0gZ3936HDAlGd28i7sOGQ== lodash.isequal@^4.0.0: version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" - integrity sha1-QVxEePK8wwEgwizhDtMib30+GOA= + resolved "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz" + integrity sha1-QVxEePK8wwEgwizhDtMib30+GOA= sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ== lodash.kebabcase@4.1.1: version "4.1.1" - resolved "https://registry.yarnpkg.com/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz#8489b1cb0d29ff88195cceca448ff6d6cc295c36" - integrity sha1-hImxyw0p/4gZXM7KRI/21swpXDY= + resolved "https://registry.npmjs.org/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz" + integrity sha1-hImxyw0p/4gZXM7KRI/21swpXDY= sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g== lodash.keys@^3.0.0: version "3.1.2" - resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a" - integrity sha1-TbwEcrFWvlCgsoaFXRvQsMZWCYo= + resolved "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz" + integrity sha1-TbwEcrFWvlCgsoaFXRvQsMZWCYo= sha512-CuBsapFjcubOGMn3VD+24HOAPxM79tH+V6ivJL3CHYjtrawauDJHUk//Yew9Hvc6e9rbCrURGk8z6PC+8WJBfQ== dependencies: lodash._getnative "^3.0.0" lodash.isarguments "^3.0.0" @@ -5341,38 +5074,38 @@ lodash.keys@^3.0.0: lodash.omit@^4.5.0: version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.omit/-/lodash.omit-4.5.0.tgz#6eb19ae5a1ee1dd9df0b969e66ce0b7fa30b5e60" - integrity sha1-brGa5aHuHdnfC5aeZs4Lf6MLXmA= + resolved "https://registry.npmjs.org/lodash.omit/-/lodash.omit-4.5.0.tgz" + integrity sha1-brGa5aHuHdnfC5aeZs4Lf6MLXmA= sha512-XeqSp49hNGmlkj2EJlfrQFIzQ6lXdNro9sddtQzcJY8QaoC2GO0DT7xaIokHeyM+mIT0mPMlPvkYzg2xCuHdZg== lodash.padend@^4.6.1: version "4.6.1" - resolved "https://registry.yarnpkg.com/lodash.padend/-/lodash.padend-4.6.1.tgz#53ccba047d06e158d311f45da625f4e49e6f166e" - integrity sha1-U8y6BH0G4VjTEfRdpiX05J5vFm4= + resolved "https://registry.npmjs.org/lodash.padend/-/lodash.padend-4.6.1.tgz" + integrity sha1-U8y6BH0G4VjTEfRdpiX05J5vFm4= sha512-sOQs2aqGpbl27tmCS1QNZA09Uqp01ZzWfDUoD+xzTii0E7dSQfRKcRetFwa+uXaxaqL+TKm7CgD2JdKP7aZBSw== lodash.pick@^4.4.0: version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.pick/-/lodash.pick-4.4.0.tgz#52f05610fff9ded422611441ed1fc123a03001b3" - integrity sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM= + resolved "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz" + integrity sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM= sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q== lodash.pickby@^4.0.0: version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.pickby/-/lodash.pickby-4.6.0.tgz#7dea21d8c18d7703a27c704c15d3b84a67e33aff" - integrity sha1-feoh2MGNdwOifHBMFdO4SmfjOv8= + resolved "https://registry.npmjs.org/lodash.pickby/-/lodash.pickby-4.6.0.tgz" + integrity sha1-feoh2MGNdwOifHBMFdO4SmfjOv8= sha512-AZV+GsS/6ckvPOVQPXSiFFacKvKB4kOQu6ynt9wz0F3LO4R9Ij4K1ddYsIytDpSgLz88JHd9P+oaLeej5/Sl7Q== lodash.restparam@^3.0.0: version "3.6.1" - resolved "https://registry.yarnpkg.com/lodash.restparam/-/lodash.restparam-3.6.1.tgz#936a4e309ef330a7645ed4145986c85ae5b20805" - integrity sha1-k2pOMJ7zMKdkXtQUWYbIWuWyCAU= + resolved "https://registry.npmjs.org/lodash.restparam/-/lodash.restparam-3.6.1.tgz" + integrity sha1-k2pOMJ7zMKdkXtQUWYbIWuWyCAU= sha512-L4/arjjuq4noiUJpt3yS6KIKDtJwNe2fIYgMqyYYKoeIfV1iEqvPwhCx23o+R9dzouGihDAPN1dTIRWa7zk8tw== lodash.sumby@^4.6.0: version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.sumby/-/lodash.sumby-4.6.0.tgz#7d87737ddb216da2f7e5e7cd2dd9c403a7887346" - integrity sha1-fYdzfdshbaL35efNLdnEA6eIc0Y= + resolved "https://registry.npmjs.org/lodash.sumby/-/lodash.sumby-4.6.0.tgz" + integrity sha1-fYdzfdshbaL35efNLdnEA6eIc0Y= sha512-DCF6ONVffD6cdnZzZ7Ewhl23AOvXAvwGTfabmj4+WWkX8nXvyklgLkT5IyGt3kxX5CgfvQgLgYRRvEDsi7jTOQ== lodash.template@^3.0.0: version "3.6.2" - resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-3.6.2.tgz#f8cdecc6169a255be9098ae8b0c53d378931d14f" - integrity sha1-+M3sxhaaJVvpCYrosMU9N4kx0U8= + resolved "https://registry.npmjs.org/lodash.template/-/lodash.template-3.6.2.tgz" + integrity sha1-+M3sxhaaJVvpCYrosMU9N4kx0U8= sha512-0B4Y53I0OgHUJkt+7RmlDFWKjVAI/YUpWNiL9GQz5ORDr4ttgfQGo+phBWKFLJbBdtOwgMuUkdOHOnPg45jKmQ== dependencies: lodash._basecopy "^3.0.0" lodash._basetostring "^3.0.0" @@ -5386,90 +5119,90 @@ lodash.template@^3.0.0: lodash.templatesettings@^3.0.0: version "3.1.1" - resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz#fb307844753b66b9f1afa54e262c745307dba8e5" - integrity sha1-+zB4RHU7Zrnxr6VOJix0UwfbqOU= + resolved "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz" + integrity sha1-+zB4RHU7Zrnxr6VOJix0UwfbqOU= sha512-TcrlEr31tDYnWkHFWDCV3dHYroKEXpJZ2YJYvJdhN+y4AkWMDZ5I4I8XDtUKqSAyG81N7w+I1mFEJtcED+tGqQ== dependencies: lodash._reinterpolate "^3.0.0" lodash.escape "^3.0.0" -lodash@3.9.3: - version "3.9.3" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.9.3.tgz#0159e86832feffc6d61d852b12a953b99496bd32" - integrity sha1-AVnoaDL+/8bWHYUrEqlTuZSWvTI= - lodash@^4.0.0, lodash@^4.0.1, lodash@^4.13.1, lodash@^4.17.4, lodash@^4.2.0, lodash@^4.3.0, lodash@^4.5.1, lodash@^4.9.0: version "4.17.4" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" - integrity sha1-eCA6TRwyiuHYbcpkYONptX9AVa4= + resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz" + integrity sha1-eCA6TRwyiuHYbcpkYONptX9AVa4= sha512-6X37Sq9KCpLSXEh8uM12AKYlviHPNNk4RxiGBn4cmKGJinbXBneWIV7iE/nXkM928O7ytHcHb6+X6Svl0f4hXg== lodash@^4.17.11: version "4.17.21" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" + resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== lodash@^4.17.14: version "4.17.15" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" + resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz" integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== +lodash@3.9.3: + version "3.9.3" + resolved "https://registry.npmjs.org/lodash/-/lodash-3.9.3.tgz" + integrity sha1-AVnoaDL+/8bWHYUrEqlTuZSWvTI= sha512-v5SKZhnCUujcTpFpHEIJZDVcBM2OYjROx732HyJ6kzKZtwStTb4LG6noqmK9etHqDNhf6X7itXx5s0hTpAXPpQ== + loose-envify@^1.0.0: version "1.3.1" - resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848" - integrity sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg= + resolved "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz" + integrity sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg= sha512-iG/U770U9HaHmy0u+fSyxSIclZ3d9WPFtGjV2drWW0SthBnQ1Fa/SCKIaGLAVwYzrBGEPx9gen047er+MCUgnQ== dependencies: js-tokens "^3.0.0" lowercase-keys@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.0.tgz#4e3366b39e7f5457e35f1324bdf6f88d0bfc7306" - integrity sha1-TjNms55/VFfjXxMkvfb4jQv8cwY= + resolved "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz" + integrity sha1-TjNms55/VFfjXxMkvfb4jQv8cwY= sha512-RPlX0+PHuvxVDZ7xX+EBVAp4RsVxP/TdDSN2mJYdiq1Lc4Hz7EUSjUI7RZrKKlmrIzVhf6Jo2stj7++gVarS0A== ltgt@^2.1.2: version "2.2.0" - resolved "https://registry.yarnpkg.com/ltgt/-/ltgt-2.2.0.tgz#b65ba5fcb349a29924c8e333f7c6a5562f2e4842" - integrity sha1-tlul/LNJopkkyOMz98alVi8uSEI= + resolved "https://registry.npmjs.org/ltgt/-/ltgt-2.2.0.tgz" + integrity sha1-tlul/LNJopkkyOMz98alVi8uSEI= sha512-mc8flyEbqYZSpAtlwugA37o9GXchaS/1yIaW/PBoSg19DHdTevZfBowaUMTMcUwizWluCDvBaPpAI7LjRXnioQ== magic-string@^0.16.0: version "0.16.0" - resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.16.0.tgz#970ebb0da7193301285fb1aa650f39bdd81eb45a" - integrity sha1-lw67DacZMwEoX7GqZQ85vdgetFo= + resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.16.0.tgz" + integrity sha1-lw67DacZMwEoX7GqZQ85vdgetFo= sha512-c4BEos3y6G2qO0B9X7K0FVLOPT9uGrjYwYRLFmDqyl5YMboUviyecnXWp94fJTSMwPw2/sf+CEYt5AGpmklkkQ== dependencies: vlq "^0.2.1" magic-string@^0.19.0: version "0.19.1" - resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.19.1.tgz#14d768013caf2ec8fdea16a49af82fc377e75201" - integrity sha1-FNdoATyvLsj96hakmvgvw3fnUgE= + resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.19.1.tgz" + integrity sha1-FNdoATyvLsj96hakmvgvw3fnUgE= sha512-AJRZGyg/F3QJUsgz/0Kh7HR09VZ1Mu/Nfyou9WtlXAYyMErN4BvtAOqwsYpHwT+UWbP2QlGPPmHTCvZjk0zcAw== dependencies: vlq "^0.2.1" make-dir@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.0.0.tgz#97a011751e91dd87cfadef58832ebb04936de978" - integrity sha1-l6ARdR6R3YfPre9Ygy67BJNt6Xg= + resolved "https://registry.npmjs.org/make-dir/-/make-dir-1.0.0.tgz" + integrity sha1-l6ARdR6R3YfPre9Ygy67BJNt6Xg= sha512-d4rXDWLFad/RwLfoORm8T/Vtm8A9h7S8tobJ4WRo9DEJg5KjWNVFbVpzLgpX9OfzD8JiXIa7fq/p9z6HT1J9uA== dependencies: pify "^2.3.0" map-cache@^0.2.2: version "0.2.2" - resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" - integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= + resolved "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz" + integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg== map-visit@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" - integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= + resolved "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz" + integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w== dependencies: object-visit "^1.0.0" markdown-it-anchor@^5.0.2: version "5.2.4" - resolved "https://registry.yarnpkg.com/markdown-it-anchor/-/markdown-it-anchor-5.2.4.tgz#d39306fe4c199705b4479d3036842cf34dcba24f" + resolved "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.2.4.tgz" integrity sha512-n8zCGjxA3T+Mx1pG8HEgbJbkB8JFUuRkeTZQuIM8iPY6oQ8sWOPRZJDFC9a/pNg2QkHEjjGkhBEl/RSyzaDZ3A== markdown-it@^8.4.2: version "8.4.2" - resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-8.4.2.tgz#386f98998dc15a37722aa7722084f4020bdd9b54" + resolved "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.2.tgz" integrity sha512-GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ== dependencies: argparse "^1.0.7" @@ -5480,13 +5213,13 @@ markdown-it@^8.4.2: marked@^0.7.0: version "0.7.0" - resolved "https://registry.yarnpkg.com/marked/-/marked-0.7.0.tgz#b64201f051d271b1edc10a04d1ae9b74bb8e5c0e" + resolved "https://registry.npmjs.org/marked/-/marked-0.7.0.tgz" integrity sha512-c+yYdCZJQrsRjTPhUx7VKkApw9bwDkNbHUKo1ovgcfDjb2kc8rLuRbIFyXL5WOEUwzSSKo3IXpph2K6DqB/KZg== matched@^0.4.3: version "0.4.4" - resolved "https://registry.yarnpkg.com/matched/-/matched-0.4.4.tgz#56d7b7eb18033f0cf9bc52eb2090fac7dc1e89fa" - integrity sha1-Vte36xgDPwz5vFLrIJD6x9weifo= + resolved "https://registry.npmjs.org/matched/-/matched-0.4.4.tgz" + integrity sha1-Vte36xgDPwz5vFLrIJD6x9weifo= sha512-zpasnbB5vQkvb0nfcKV0zEoGgMtV7atlWR1Vk3E8tEKh6EicMseKtVV+5vc+zsZwvDlcNMKlKK/CVOEeAalYRQ== dependencies: arr-union "^3.1.0" async-array-reduce "^0.2.0" @@ -5500,30 +5233,30 @@ matched@^0.4.3: math-random@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/math-random/-/math-random-1.0.1.tgz#8b3aac588b8a66e4975e3cdea67f7bb329601fac" - integrity sha1-izqsWIuKZuSXXjzepn97sylgH6w= + resolved "https://registry.npmjs.org/math-random/-/math-random-1.0.1.tgz" + integrity sha1-izqsWIuKZuSXXjzepn97sylgH6w= sha512-8ouwf9bXx9OC6n6tEtxZ7Z8aR1t6ArOkjJyKlZEE+6wYioaaa0EOR97I8RFcg2F8+h8GgfWe55xThTGsyecJIQ== mdurl@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-1.0.1.tgz#fe85b2ec75a59037f2adfec100fd6c601761152e" - integrity sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4= + resolved "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz" + integrity sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4= sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g== merge-stream@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-1.0.1.tgz#4041202d508a342ba00174008df0c251b8c135e1" - integrity sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE= + resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz" + integrity sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE= sha512-e6RM36aegd4f+r8BZCcYXlO2P3H6xbUM6ktL2Xmf45GAOit9bI4z6/3VU7JwllVO1L7u0UDSg/EhzQ5lmMLolA== dependencies: readable-stream "^2.0.1" merge@1.x: version "1.2.0" - resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.0.tgz#7531e39d4949c281a66b8c5a6e0265e8b05894da" - integrity sha1-dTHjnUlJwoGma4xabgJl6LBYlNo= + resolved "https://registry.npmjs.org/merge/-/merge-1.2.0.tgz" + integrity sha1-dTHjnUlJwoGma4xabgJl6LBYlNo= sha512-3GGUnRRpmQMsRpuMbW26z/raenVYeYXcGR1qBGvlHmPq5jaXqL1Zqgdh/0bRw+mTE6F2oTjCj8Tb/wUOy61/CA== micromatch@^2.1.5, micromatch@^2.3.11, micromatch@^2.3.7: version "2.3.11" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" - integrity sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU= + resolved "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz" + integrity sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU= sha512-LnU2XFEk9xxSJ6rfgAry/ty5qwUTyHYOBU0g4R6tIw5ljwgGIBmiKhRWLw5NpMOnrgUNcDJ4WMp8rl3sYVHLNA== dependencies: arr-diff "^2.0.0" array-unique "^0.2.1" @@ -5541,7 +5274,7 @@ micromatch@^2.1.5, micromatch@^2.3.11, micromatch@^2.3.7: micromatch@^3.1.10: version "3.1.10" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" + resolved "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz" integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== dependencies: arr-diff "^4.0.0" @@ -5560,162 +5293,123 @@ micromatch@^3.1.10: miller-rabin@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.0.tgz#4a62fb1d42933c05583982f4c716f6fb9e6c6d3d" - integrity sha1-SmL7HUKTPAVYOYL0xxb2+55sbT0= + resolved "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.0.tgz" + integrity sha1-SmL7HUKTPAVYOYL0xxb2+55sbT0= sha512-aaZr5VprJSt03eVBJEsG+LOI2ccb/j+DXrnme/z/2M2+K9TRM7IY0+Csko/8dYF3XlUHvgPhrcDZfOAHXYqiZg== dependencies: bn.js "^4.0.0" brorand "^1.0.1" -mime-db@^1.28.0: - version "1.29.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.29.0.tgz#48d26d235589651704ac5916ca06001914266878" - integrity sha1-SNJtI1WJZRcErFkWygYAGRQmaHg= +mime-db@^1.28.0, mime-db@~1.30.0: + version "1.30.0" + resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.30.0.tgz" + integrity sha1-dMZD2i3Z1qRTmZY0ZbJtXKfXHwE= sha512-SUaL89ROHF5P6cwrhLxE1Xmk60cFcctcJl3zwMeQWcoQzt0Al/X8qxUz2gi19NECqYspzbYpAJryIRnLcjp20g== mime-db@~1.12.0: version "1.12.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.12.0.tgz#3d0c63180f458eb10d325aaa37d7c58ae312e9d7" - integrity sha1-PQxjGA9FjrENMlqqN9fFiuMS6dc= - -mime-db@~1.30.0: - version "1.30.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.30.0.tgz#74c643da2dd9d6a45399963465b26d5ca7d71f01" - integrity sha1-dMZD2i3Z1qRTmZY0ZbJtXKfXHwE= + resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.12.0.tgz" + integrity sha1-PQxjGA9FjrENMlqqN9fFiuMS6dc= sha512-5aMAW7I4jZoZB27fXRuekqc4DVvJ7+hM8UcWrNj2mqibE54gXgPSonBYBdQW5hyaVNGmiYjY0ZMqn9fBefWYvA== -mime-db@~1.37.0: - version "1.37.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.37.0.tgz#0b6a0ce6fdbe9576e25f1f2d2fde8830dc0ad0d8" - integrity sha512-R3C4db6bgQhlIhPU48fUtdVmKnflq+hRdad7IyKhtFj06VPNVdk2RhiYL3UjQIlso8L+YxAtFkobT0VK+S/ybg== - -mime-types@2.1.17: +mime-types@^2.1.12, mime-types@~2.1.7, mime-types@2.1.17: version "2.1.17" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.17.tgz#09d7a393f03e995a79f8af857b70a9e0ab16557a" - integrity sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo= + resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.17.tgz" + integrity sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo= sha512-rOFZoFAbaupSpzARUe5CU1P9mwfX+lIFAuj0soNsEZEnrHu6LZNyV7/FClEB/oF9A1o5KStlumRjW6D4Q2FRCA== dependencies: mime-db "~1.30.0" -mime-types@^2.1.12, mime-types@~2.1.7: - version "2.1.21" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.21.tgz#28995aa1ecb770742fe6ae7e58f9181c744b3f96" - integrity sha512-3iL6DbwpyLzjR3xHSFNFeb9Nz/M8WDkX33t1GFQnFOllWk8pOrh/LSrB5OXlnlW5P9LH73X6loW/eogc+F5lJg== - dependencies: - mime-db "~1.37.0" - mime-types@~1.0.1: version "1.0.2" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-1.0.2.tgz#995ae1392ab8affcbfcb2641dd054e943c0d5dce" - integrity sha1-mVrhOSq4r/y/yyZB3QVOlDwNXc4= + resolved "https://registry.npmjs.org/mime-types/-/mime-types-1.0.2.tgz" + integrity sha1-mVrhOSq4r/y/yyZB3QVOlDwNXc4= sha512-echfutj/t5SoTL4WZpqjA1DCud1XO0WQF3/GJ48YBmc4ZMhCK77QA6Z/w6VTQERLKuJ4drze3kw2TUT8xZXVNw== mime-types@~2.0.3: version "2.0.14" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.0.14.tgz#310e159db23e077f8bb22b748dabfa4957140aa6" - integrity sha1-MQ4VnbI+B3+Lsit0jav6SVcUCqY= + resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.0.14.tgz" + integrity sha1-MQ4VnbI+B3+Lsit0jav6SVcUCqY= sha512-2ZHUEstNkIf2oTWgtODr6X0Cc4Ns/RN/hktdozndiEhhAC2wxXejF1FH0XLHTEImE9h6gr/tcnr3YOnSGsxc7Q== dependencies: mime-db "~1.12.0" mime@^1.2.11: version "1.3.4" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.4.tgz#115f9e3b6b3daf2959983cb38f149a2d40eb5d53" - integrity sha1-EV+eO2s9rylZmDyzjxSaLUDrXVM= + resolved "https://registry.npmjs.org/mime/-/mime-1.3.4.tgz" + integrity sha1-EV+eO2s9rylZmDyzjxSaLUDrXVM= sha512-sAaYXszED5ALBt665F0wMQCUXpGuZsGdopoqcHPdL39ZYdi7uHoZlhrfZfhv8WzivhBzr/oXwaj+yiK5wY8MXQ== mimic-response@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.0.tgz#df3d3652a73fded6b9b0b24146e6fd052353458e" - integrity sha1-3z02Uqc/3ta5sLJBRub9BSNTRY4= + resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.0.tgz" + integrity sha1-3z02Uqc/3ta5sLJBRub9BSNTRY4= sha512-Nyxh+TsqCmcTqEqpGdDSRuqt044C42ppSMT/6f4valegHIStgaCH31fvW4ZKL+SH3/eH4hqHDT2LMPf+93shDQ== minimalistic-assert@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz#702be2dda6b37f4836bcb3f5db56641b64a1d3d3" - integrity sha1-cCvi3aazf0g2vLP121ZkG2Sh09M= + resolved "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz" + integrity sha1-cCvi3aazf0g2vLP121ZkG2Sh09M= sha512-0xPOgDvW9sfA9OrHHCuSRZhj/e+L82RGLFf0b9EsvagmQpGnRYtztTIuq1JR3biVE7u+Mu2jWZqSxvZ8CaMrBQ== minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" - integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= + resolved "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz" + integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== -"minimatch@2 || 3": - version "3.0.3" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.3.tgz#2a4e4090b96b2db06a9d7df01055a62a77c9b774" - integrity sha1-Kk5AkLlrLbBqnX3wEFWmKnfJt3Q= - dependencies: - brace-expansion "^1.0.0" - -minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.4: +minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.4, "minimatch@2 || 3": version "3.0.4" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz" integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== dependencies: brace-expansion "^1.1.7" -minimist@0.0.8, minimist@~0.0.1: +minimist@^1.1.0, minimist@^1.2.0, minimist@^1.2.5, minimist@1.2.7: + version "1.2.7" + resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz" + integrity sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g== + +minimist@~0.0.1: + version "0.0.8" + resolved "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz" + integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= sha512-miQKw5Hv4NS1Psg2517mV4e4dYNaO3++hjAvLOAzKqZ61rH8NS1SK+vbfBWZ5PY/Me/bEWhUwqMghEW5Fb9T7Q== + +minimist@0.0.8: version "0.0.8" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" - integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= + resolved "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz" + integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= sha512-miQKw5Hv4NS1Psg2517mV4e4dYNaO3++hjAvLOAzKqZ61rH8NS1SK+vbfBWZ5PY/Me/bEWhUwqMghEW5Fb9T7Q== minimist@1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.1.0.tgz#cdf225e8898f840a258ded44fc91776770afdc93" - integrity sha1-zfIl6ImPhAolje1E/JF3Z3Cv3JM= + resolved "https://registry.npmjs.org/minimist/-/minimist-1.1.0.tgz" + integrity sha1-zfIl6ImPhAolje1E/JF3Z3Cv3JM= sha512-ozllOyYiayzEgHCQKMPXKkOn9QRdeVe0TrIxLp+SJXMA0XNCL+yf4OtyPkB2JthzzYePYOTRnipBi3oOOa82sw== minimist@1.2.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" - integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= - -minimist@1.2.7: - version "1.2.7" - resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz#daa1c4d91f507390437c6a8bc01078e7000c4d18" - integrity sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g== - -minimist@^1.1.0, minimist@^1.2.0, minimist@^1.2.5: - version "1.2.8" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" - integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== - -minipass@^2.2.1, minipass@^2.3.4: - version "2.3.5" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.3.5.tgz#cacebe492022497f656b0f0f51e2682a9ed2d848" - integrity sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA== - dependencies: - safe-buffer "^5.1.2" - yallist "^3.0.0" - -minizlib@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.2.0.tgz#59517387478fd98d8017ed0299c6cb16cbd12da3" - integrity sha512-vQhkoouK/oKRVuFJynustmW3wrqZEXOrfbVVirvOVeglH4TNvIkcqiyojlIbbZYYDJZSbEKEXmDudg+tyRkm6g== - dependencies: - minipass "^2.2.1" + resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz" + integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= sha512-7Wl+Jz+IGWuSdgsQEJ4JunV0si/iMhg42MnQQG6h1R6TNeVenp4U9x5CC5v/gYqz/fENLQITAWXidNtVL0NNbw== mixin-deep@^1.2.0: version "1.3.1" - resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.1.tgz#a49e7268dce1a0d9698e45326c5626df3543d0fe" + resolved "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz" integrity sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ== dependencies: for-in "^1.0.2" is-extendable "^1.0.1" -mkdirp2@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/mkdirp2/-/mkdirp2-1.0.3.tgz#cc8dd8265f1f06e2d8f5b10b6e52f4e050bed21b" - integrity sha1-zI3YJl8fBuLY9bELblL04FC+0hs= +mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@0.5.1, mkdirp@0.5.x: + version "0.5.1" + resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz" + integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= sha512-SknJC52obPfGQPnjIkXbmA6+5H15E+fR+E4iR2oQ3zzCLbd7/ONua69R/Gw7AgkTLsRG+r5fzksYwWe1AgTyWA== + dependencies: + minimist "0.0.8" mkdirp@0.5.0: version "0.5.0" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.0.tgz#1d73076a6df986cd9344e15e71fcc05a4c9abf12" - integrity sha1-HXMHam35hs2TROFecfzAWkyavxI= + resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz" + integrity sha1-HXMHam35hs2TROFecfzAWkyavxI= sha512-xjjNGy+ry1lhtIKcr2PT6ok3aszhQfgrUDp4OZLHacgRgFmF6XR9XCOJVcXlVGQonIqXcK1DvqgKKQOPWYGSfw== dependencies: minimist "0.0.8" -mkdirp@0.5.1, mkdirp@0.5.x, mkdirp@^0.5.0, mkdirp@^0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" - integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= - dependencies: - minimist "0.0.8" +mkdirp2@^1.0.3: + version "1.0.3" + resolved "https://registry.npmjs.org/mkdirp2/-/mkdirp2-1.0.3.tgz" + integrity sha1-zI3YJl8fBuLY9bELblL04FC+0hs= sha512-O/bJQuhDm09uRoUfnKC+DefSgXXKjHLCQCd+R8hBoAmtBv0f9qLghBpGPMkoZpvQLBDJ9D3ra2lUrLUheG2wkA== mocha@3.5.0: version "3.5.0" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-3.5.0.tgz#1328567d2717f997030f8006234bce9b8cd72465" + resolved "https://registry.npmjs.org/mocha/-/mocha-3.5.0.tgz" integrity sha512-pIU2PJjrPYvYRqVpjXzj76qltO9uBYI7woYAMoxbSefsa+vqAfptjoeevd6bUgwD0mPIO+hv9f7ltvsNreL2PA== dependencies: browser-stdout "1.3.0" @@ -5732,33 +5426,28 @@ mocha@3.5.0: module-details-from-path@^1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/module-details-from-path/-/module-details-from-path-1.0.3.tgz#114c949673e2a8a35e9d35788527aa37b679da2b" - integrity sha1-EUyUlnPiqKNenTV4hSeqN7Z52is= + resolved "https://registry.npmjs.org/module-details-from-path/-/module-details-from-path-1.0.3.tgz" + integrity sha1-EUyUlnPiqKNenTV4hSeqN7Z52is= sha512-ySViT69/76t8VhE1xXHK6Ch4NcDd26gx0MzKXLO+F7NOtnqH68d9zF94nT8ZWSxXh8ELOERsnJO/sWt1xZYw5A== moment@2.x.x: version "2.18.1" - resolved "https://registry.yarnpkg.com/moment/-/moment-2.18.1.tgz#c36193dd3ce1c2eed2adb7c802dbbc77a81b1c0f" - integrity sha1-w2GT3Tzhwu7SrbfIAtu8d6gbHA8= - -ms@0.7.2: - version "0.7.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.2.tgz#ae25cf2512b3885a1d95d7f037868d8431124765" - integrity sha1-riXPJRKziFodldfwN4aNhDESR2U= + resolved "https://registry.npmjs.org/moment/-/moment-2.18.1.tgz" + integrity sha1-w2GT3Tzhwu7SrbfIAtu8d6gbHA8= sha512-QGcnVKRSEhbWy2i0pqFhjWMCczL/YU5ICMB3maUavFcyUqBszRnzsswvOaGOqSfWZ/R+dMnb9gGBuRT4LMTdVQ== ms@2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= + resolved "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz" + integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== ms@2.1.2: version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== multimatch@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-2.1.0.tgz#9c7906a22fb4c02919e2f5f75161b4cdbd4b2a2b" - integrity sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis= + resolved "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz" + integrity sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis= sha512-0mzK8ymiWdehTBiJh0vClAzGyQbdtyWqzSVx//EK4N/D+599RFlGfTAsKw2zMSABtDG9C6Ul2+t8f2Lbdjf5mA== dependencies: array-differ "^1.0.0" array-union "^1.0.1" @@ -5767,24 +5456,19 @@ multimatch@^2.1.0: multipipe@^0.1.2: version "0.1.2" - resolved "https://registry.yarnpkg.com/multipipe/-/multipipe-0.1.2.tgz#2a8f2ddf70eed564dff2d57f1e1a137d9f05078b" - integrity sha1-Ko8t33Du1WTf8tV/HhoTfZ8FB4s= + resolved "https://registry.npmjs.org/multipipe/-/multipipe-0.1.2.tgz" + integrity sha1-Ko8t33Du1WTf8tV/HhoTfZ8FB4s= sha512-7ZxrUybYv9NonoXgwoOqtStIu18D1c3eFZj27hqgf5kBrBF8Q+tE8V0MW8dKM5QLkQPh1JhhbKgHLY9kifov4Q== dependencies: duplexer2 "0.0.2" mute-stream@0.0.5: version "0.0.5" - resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.5.tgz#8fbfabb0a98a253d3184331f9e8deb7372fac6c0" - integrity sha1-j7+rsKmKJT0xhDMfno3rc3L6xsA= - -nan@^2.9.2: - version "2.11.1" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.11.1.tgz#90e22bccb8ca57ea4cd37cc83d3819b52eea6766" - integrity sha512-iji6k87OSXa0CcrLl9z+ZiYSuR2o+c0bGuNmXdrhTQTakxytAFsC56SArGYoiHlJlFoHSnvmhpceZJaXkVuOtA== + resolved "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.5.tgz" + integrity sha1-j7+rsKmKJT0xhDMfno3rc3L6xsA= sha512-EbrziT4s8cWPmzr47eYVW3wimS4HsvlnV5ri1xw1aR6JQo/OrJX5rkl32K/QQHdxeabJETtfeaROGhd8W7uBgg== nanomatch@^1.2.9: version "1.2.13" - resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" + resolved "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz" integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== dependencies: arr-diff "^4.0.0" @@ -5801,42 +5485,33 @@ nanomatch@^1.2.9: natural-compare@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" - integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= - -needle@^2.2.1: - version "2.2.4" - resolved "https://registry.yarnpkg.com/needle/-/needle-2.2.4.tgz#51931bff82533b1928b7d1d69e01f1b00ffd2a4e" - integrity sha512-HyoqEb4wr/rsoaIDfTH2aVL9nWtQqba2/HvMv+++m8u0dz808MaagKILxtfeSN7QU7nvbQ79zk3vYOJp9zsNEA== - dependencies: - debug "^2.1.2" - iconv-lite "^0.4.4" - sax "^1.2.4" + resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz" + integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== neo-async@^2.6.0: version "2.6.2" - resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" + resolved "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz" integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== -node-fetch@1.6.3, node-fetch@^1.3.3: - version "1.6.3" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.6.3.tgz#dc234edd6489982d58e8f0db4f695029abcd8c04" - integrity sha1-3CNO3WSJmC1Y6PDbT2lQKavNjAQ= +node-fetch@^1.3.3, node-fetch@1.7.2: + version "1.7.2" + resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.2.tgz" + integrity sha512-xZZUq2yDhKMIn/UgG5q//IZSNLJIwW2QxS14CNH5spuiXkITM2pUitjdq58yLSaU7m4M0wBNaM2Gh/ggY4YJig== dependencies: encoding "^0.1.11" is-stream "^1.0.1" -node-fetch@1.7.2: - version "1.7.2" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.2.tgz#c54e9aac57e432875233525f3c891c4159ffefd7" - integrity sha512-xZZUq2yDhKMIn/UgG5q//IZSNLJIwW2QxS14CNH5spuiXkITM2pUitjdq58yLSaU7m4M0wBNaM2Gh/ggY4YJig== +node-fetch@1.6.3: + version "1.6.3" + resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-1.6.3.tgz" + integrity sha1-3CNO3WSJmC1Y6PDbT2lQKavNjAQ= sha512-BDxbhLHXFFFvilHjh9xihcDyPkXQ+kjblxnl82zAX41xUYSNvuRpFRznmldR9+OKu+p+ULZ7hNoyunlLB5ecUA== dependencies: encoding "^0.1.11" is-stream "^1.0.1" node-jq@0.7.0: version "0.7.0" - resolved "https://registry.yarnpkg.com/node-jq/-/node-jq-0.7.0.tgz#a3c19922228ce3dc65de8ce5b9d7c4ff3b64dabc" + resolved "https://registry.npmjs.org/node-jq/-/node-jq-0.7.0.tgz" integrity sha512-5oMKLqc1KF+1K8cm84NyDP8ZBT2lo8H7tDC7Xiywj295ukEmE9Wo8XDIKz/ehmJAcVwAPWFg40pLfuZjWJmcfg== dependencies: bin-build "^2.2.0" @@ -5845,117 +5520,70 @@ node-jq@0.7.0: strip-eof "^1.0.0" tempfile "^2.0.0" -node-pre-gyp@^0.10.0: - version "0.10.3" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.10.3.tgz#3070040716afdc778747b61b6887bf78880b80fc" - integrity sha512-d1xFs+C/IPS8Id0qPTZ4bUT8wWryfR/OzzAFxweG+uLN85oPzyo2Iw6bVlLQ/JOdgNonXLCoRyqDzDWq4iw72A== - dependencies: - detect-libc "^1.0.2" - mkdirp "^0.5.1" - needle "^2.2.1" - nopt "^4.0.1" - npm-packlist "^1.1.6" - npmlog "^4.0.2" - rc "^1.2.7" - rimraf "^2.6.1" - semver "^5.3.0" - tar "^4" - node-releases@^1.1.75: version "1.1.75" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.75.tgz#6dd8c876b9897a1b8e5a02de26afa79bb54ebbfe" + resolved "https://registry.npmjs.org/node-releases/-/node-releases-1.1.75.tgz" integrity sha512-Qe5OUajvqrqDSy6wrWFmMwfJ0jVgwiw4T3KqmbTcZ62qW0gQkheXYhcFM1+lOVcGUoRxcEcfyvFMAnDgaF1VWw== node-status-codes@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/node-status-codes/-/node-status-codes-1.0.0.tgz#5ae5541d024645d32a58fcddc9ceecea7ae3ac2f" - integrity sha1-WuVUHQJGRdMqWPzdyc7s6nrjrC8= + resolved "https://registry.npmjs.org/node-status-codes/-/node-status-codes-1.0.0.tgz" + integrity sha1-WuVUHQJGRdMqWPzdyc7s6nrjrC8= sha512-1cBMgRxdMWE8KeWCqk2RIOrvUb0XCwYfEsY5/y2NlXyq4Y/RumnOZvTj4Nbr77+Vb2C+kyBoRTdkNOS8L3d/aQ== node-uuid@~1.4.0: version "1.4.8" - resolved "https://registry.yarnpkg.com/node-uuid/-/node-uuid-1.4.8.tgz#b040eb0923968afabf8d32fb1f17f1167fdab907" - integrity sha1-sEDrCSOWivq/jTL7HxfxFn/auQc= - -nopt@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" - integrity sha1-0NRoWv1UFRk8jHUFYC0NF81kR00= - dependencies: - abbrev "1" - osenv "^0.1.4" + resolved "https://registry.npmjs.org/node-uuid/-/node-uuid-1.4.8.tgz" + integrity sha1-sEDrCSOWivq/jTL7HxfxFn/auQc= sha512-TkCET/3rr9mUuRp+CpO7qfgT++aAxfDRaalQhwPFzI9BY/2rCDn6OfpZOVggi1AXfTPpfkTrg5f5WQx5G1uLxA== normalize-path@^2.0.0, normalize-path@^2.0.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" - integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= + resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz" + integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w== dependencies: remove-trailing-separator "^1.0.1" -npm-bundled@^1.0.1: - version "1.0.5" - resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.0.5.tgz#3c1732b7ba936b3a10325aef616467c0ccbcc979" - integrity sha512-m/e6jgWu8/v5niCUKQi9qQl8QdeEduFA96xHDDzFGqly0OOjI7c+60KM/2sppfnUU9JJagf+zs+yGhqSOFj71g== - npm-conf@^1.1.0: version "1.1.2" - resolved "https://registry.yarnpkg.com/npm-conf/-/npm-conf-1.1.2.tgz#170a2c48a0c6ad0495f03f87aec2da11ef47a525" + resolved "https://registry.npmjs.org/npm-conf/-/npm-conf-1.1.2.tgz" integrity sha512-dotwbpwVzfNB/2EF3A2wjK5tEMLggKfuA/8TG6WvBB1Zrv+JsvF7E8ei9B/HGq211st/GwXFbREcNJvJ1eySUQ== dependencies: config-chain "^1.1.11" pify "^3.0.0" -npm-packlist@^1.1.6: - version "1.1.12" - resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.1.12.tgz#22bde2ebc12e72ca482abd67afc51eb49377243a" - integrity sha512-WJKFOVMeAlsU/pjXuqVdzU0WfgtIBCupkEVwn+1Y0ERAbUfWw8R4GjgVbaKnUjRoD2FoQbHOCbOyT5Mbs9Lw4g== - dependencies: - ignore-walk "^3.0.1" - npm-bundled "^1.0.1" - -npmlog@^4.0.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" - integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== - dependencies: - are-we-there-yet "~1.1.2" - console-control-strings "~1.1.0" - gauge "~2.7.3" - set-blocking "~2.0.0" - number-is-nan@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" - integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= + resolved "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz" + integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ== oauth-sign@~0.5.0: version "0.5.0" - resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.5.0.tgz#d767f5169325620eab2e087ef0c472e773db6461" - integrity sha1-12f1FpMlYg6rLgh+8MRy53PbZGE= + resolved "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.5.0.tgz" + integrity sha1-12f1FpMlYg6rLgh+8MRy53PbZGE= sha512-jXeZq5EriUSGdNIePO45lhemfuCBKi5DARdE30v173MPCLymq2DxR477J/RuCXLphNx7OVAqXVyj3JoUaiHpNw== oauth-sign@~0.8.1: version "0.8.2" - resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" - integrity sha1-Rqarfwrq2N6unsBWV4C31O/rnUM= + resolved "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz" + integrity sha1-Rqarfwrq2N6unsBWV4C31O/rnUM= sha512-VlF07iu3VV3+BTXj43Nmp6Irt/G7j/NgEctUS6IweH1RGhURjjCc2NWtzXFPXXWWfc7hgbXQdtiQu2LGp6MxUg== object-assign@^2.0.0: version "2.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-2.1.1.tgz#43c36e5d569ff8e4816c4efa8be02d26967c18aa" - integrity sha1-Q8NuXVaf+OSBbE76i+AtJpZ8GKo= + resolved "https://registry.npmjs.org/object-assign/-/object-assign-2.1.1.tgz" + integrity sha1-Q8NuXVaf+OSBbE76i+AtJpZ8GKo= sha512-CdsOUYIh5wIiozhJ3rLQgmUTgcyzFwZZrqhkKhODMoGtPKM+wt0h0CNIoauJWMsS9822EdzPsF/6mb4nLvPN5g== object-assign@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-3.0.0.tgz#9bedd5ca0897949bca47e7ff408062d549f587f2" - integrity sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I= + resolved "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz" + integrity sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I= sha512-jHP15vXVGeVh1HuaA2wY6lxk+whK/x4KBG88VXeRma7CCun7iGD5qPc4eYykQ9sdQvg8jkwFKsSxHln2ybW3xQ== object-assign@^4.0.0, object-assign@^4.0.1, object-assign@^4.1.0: version "4.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= + resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" + integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== object-copy@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" - integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw= + resolved "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz" + integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw= sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ== dependencies: copy-descriptor "^0.1.0" define-property "^0.2.5" @@ -5963,18 +5591,18 @@ object-copy@^0.1.0: object-get@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/object-get/-/object-get-2.1.0.tgz#722bbdb60039efa47cad3c6dc2ce51a85c02c5ae" - integrity sha1-ciu9tgA576R8rTxtws5RqFwCxa4= + resolved "https://registry.npmjs.org/object-get/-/object-get-2.1.0.tgz" + integrity sha1-ciu9tgA576R8rTxtws5RqFwCxa4= sha512-pCxcvCkLpaQQ6T56KFwZAjDmnqeqUXuDHenglyOdRGtEtP2UKSmMr6jdqy+j55k2EEf8DeHS9ovCo3laWAy3xA== object-keys@^1.0.8: version "1.0.11" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d" - integrity sha1-xUYBd4rVYPEULODgG8yotW0TQm0= + resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.0.11.tgz" + integrity sha1-xUYBd4rVYPEULODgG8yotW0TQm0= sha512-I0jUsqFqmQFOIhQQFlW8QDuX3pVqUWkiiavYj8+TBiS7m+pM9hPCxSnYWqL1hHMBb7BbQ2HidT+6CZ8/BT/ilw== object-keys@~0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-0.2.0.tgz#cddec02998b091be42bf1035ae32e49f1cb6ea67" - integrity sha1-zd7AKZiwkb5CvxA1rjLknxy26mc= + resolved "https://registry.npmjs.org/object-keys/-/object-keys-0.2.0.tgz" + integrity sha1-zd7AKZiwkb5CvxA1rjLknxy26mc= sha512-XODjdR2pBh/1qrjPcbSeSgEtKbYo7LqYNq64/TPuCf7j9SfDD3i21yatKoIy39yIWNvVM59iutfQQpCv1RfFzA== dependencies: foreach "~2.0.1" indexof "~0.0.1" @@ -5982,85 +5610,85 @@ object-keys@~0.2.0: object-keys@~0.4.0: version "0.4.0" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-0.4.0.tgz#28a6aae7428dd2c3a92f3d95f21335dd204e0336" - integrity sha1-KKaq50KN0sOpLz2V8hM13SBOAzY= + resolved "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz" + integrity sha1-KKaq50KN0sOpLz2V8hM13SBOAzY= sha512-ncrLw+X55z7bkl5PnUvHwFK9FcGuFYo9gtjws2XtSzL+aZ8tm830P60WJ0dSmFVaSalWieW5MD7kEdnXda9yJw== object-to-spawn-args@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/object-to-spawn-args/-/object-to-spawn-args-1.1.1.tgz#77da8827f073d011c9e1b173f895781470246785" - integrity sha1-d9qIJ/Bz0BHJ4bFz+JV4FHAkZ4U= + resolved "https://registry.npmjs.org/object-to-spawn-args/-/object-to-spawn-args-1.1.1.tgz" + integrity sha1-d9qIJ/Bz0BHJ4bFz+JV4FHAkZ4U= sha512-d6xH8b+QdNj+cdndsL3rVCzwW9PqSSXQBDVj0d8fyaCqMimUEz+sW+Jtxp77bxaSs7C5w7XOH844FG7p2A0cFw== object-visit@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" - integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= + resolved "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz" + integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA== dependencies: isobject "^3.0.0" object.getownpropertydescriptors@^2.0.3: version "2.0.3" - resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16" - integrity sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY= + resolved "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz" + integrity sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY= sha512-NwrpYtu1CSNWdNgcEvLmHOHjhMeglj22YJpg/ezASfIFYqNK4F94iUxKRPnRNbOuOMoQb5JS+6Ebi16xtYZbqQ== dependencies: define-properties "^1.1.2" es-abstract "^1.5.1" object.omit@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" - integrity sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo= + resolved "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz" + integrity sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo= sha512-UiAM5mhmIuKLsOvrL+B0U2d1hXHF3bFYWIuH1LMpuV2EJEHG1Ntz06PgLEHjm6VFd87NpH8rastvPoyv6UW2fA== dependencies: for-own "^0.1.4" is-extendable "^0.1.1" object.pick@^1.3.0: version "1.3.0" - resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" - integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= + resolved "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz" + integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ== dependencies: isobject "^3.0.1" octal@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/octal/-/octal-1.0.0.tgz#63e7162a68efbeb9e213588d58e989d1e5c4530b" - integrity sha1-Y+cWKmjvvrniE1iNWOmJ0eXEUws= + resolved "https://registry.npmjs.org/octal/-/octal-1.0.0.tgz" + integrity sha1-Y+cWKmjvvrniE1iNWOmJ0eXEUws= sha512-nnda7W8d+A3vEIY+UrDQzzboPf1vhs4JYVhff5CDkq9QNoZY7Xrxeo/htox37j9dZf7yNHevZzqtejWgy1vCqQ== once@^1.3.0, once@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= + resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz" + integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== dependencies: wrappy "1" once@~1.3.0: version "1.3.3" - resolved "https://registry.yarnpkg.com/once/-/once-1.3.3.tgz#b2e261557ce4c314ec8304f3fa82663e4297ca20" - integrity sha1-suJhVXzkwxTsgwTz+oJmPkKXyiA= + resolved "https://registry.npmjs.org/once/-/once-1.3.3.tgz" + integrity sha1-suJhVXzkwxTsgwTz+oJmPkKXyiA= sha512-6vaNInhu+CHxtONf3zw3vq4SP2DOQhjBvIa3rNcG0+P7eKWlYH6Peu7rHizSloRU2EwMz6GraLieis9Ac9+p1w== dependencies: wrappy "1" onetime@^1.0.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789" - integrity sha1-ofeDj4MUxRbwXs78vEzP4EtO14k= + resolved "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz" + integrity sha1-ofeDj4MUxRbwXs78vEzP4EtO14k= sha512-GZ+g4jayMqzCRMgB2sol7GiCLjKfS1PINkjmx8spcKce1LiVqcbQreXwqs2YAFXC6R03VIG28ZS31t8M866v6A== opener@~1.4.0: version "1.4.3" - resolved "https://registry.yarnpkg.com/opener/-/opener-1.4.3.tgz#5c6da2c5d7e5831e8ffa3964950f8d6674ac90b8" - integrity sha1-XG2ixdflgx6P+jlklQ+NZnSskLg= + resolved "https://registry.npmjs.org/opener/-/opener-1.4.3.tgz" + integrity sha1-XG2ixdflgx6P+jlklQ+NZnSskLg= sha512-4Im9TrPJcjAYyGR5gBe3yZnBzw5n3Bfh1ceHHGNOpMurINKc6RdSIPXMyon4BZacJbJc36lLkhipioGbWh5pwg== optimist@0.6.x: version "0.6.1" - resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686" - integrity sha1-2j6nRob6IaGaERwybpDrFaAZZoY= + resolved "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz" + integrity sha1-2j6nRob6IaGaERwybpDrFaAZZoY= sha512-snN4O4TkigujZphWLN0E//nQmm7790RYaE53DdL7ZYwee2D8DDo9/EyYiKUfN3rneWUjhJnueija3G9I2i0h3g== dependencies: minimist "~0.0.1" wordwrap "~0.0.2" optionator@^0.8.1, optionator@^0.8.2: version "0.8.2" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64" - integrity sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q= + resolved "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz" + integrity sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q= sha512-oCOQ8AIC2ciLy/sE2ehafRBleBgDLvzGhBRRev87sP7ovnbvQfqpc3XFI0DhHey2OfVoNV91W+GPC6B3540/5Q== dependencies: deep-is "~0.1.3" fast-levenshtein "~2.0.4" @@ -6071,58 +5699,50 @@ optionator@^0.8.1, optionator@^0.8.2: ordered-read-streams@^0.3.0: version "0.3.0" - resolved "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-0.3.0.tgz#7137e69b3298bb342247a1bbee3881c80e2fd78b" - integrity sha1-cTfmmzKYuzQiR6G77jiByA4v14s= + resolved "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-0.3.0.tgz" + integrity sha1-cTfmmzKYuzQiR6G77jiByA4v14s= sha512-xQvd8qvx9U1iYY9aVqPpoF5V9uaWJKV6ZGljkh/jkiNX0DiQsjbWvRumbh10QTMDE8DheaOEU8xi0szbrgjzcw== dependencies: is-stream "^1.0.1" readable-stream "^2.0.1" os-homedir@^1.0.0, os-homedir@^1.0.1: version "1.0.2" - resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= + resolved "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz" + integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ== os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.1: version "1.0.2" - resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= - -osenv@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" - integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.0" + resolved "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz" + integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g== p-cancelable@^0.3.0: version "0.3.0" - resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-0.3.0.tgz#b9e123800bcebb7ac13a479be195b507b98d30fa" + resolved "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz" integrity sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw== p-event@^1.0.0: version "1.3.0" - resolved "https://registry.yarnpkg.com/p-event/-/p-event-1.3.0.tgz#8e6b4f4f65c72bc5b6fe28b75eda874f96a4a085" - integrity sha1-jmtPT2XHK8W2/ii3XtqHT5akoIU= + resolved "https://registry.npmjs.org/p-event/-/p-event-1.3.0.tgz" + integrity sha1-jmtPT2XHK8W2/ii3XtqHT5akoIU= sha512-hV1zbA7gwqPVFcapfeATaNjQ3J0NuzorHPyG8GPL9g/Y/TplWVBVoCKCXL6Ej2zscrCEv195QNWJXuBH6XZuzA== dependencies: p-timeout "^1.1.1" p-finally@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" - integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= + resolved "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz" + integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow== p-timeout@^1.1.1: version "1.2.0" - resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-1.2.0.tgz#9820f99434c5817868b4f34809ee5291660d5b6c" - integrity sha1-mCD5lDTFgXhotPNICe5SkWYNW2w= + resolved "https://registry.npmjs.org/p-timeout/-/p-timeout-1.2.0.tgz" + integrity sha1-mCD5lDTFgXhotPNICe5SkWYNW2w= sha512-NwydXFwbJ0Gk5ox8TO14PQ8ovnyOPvtqWtcVXoxfUMwPyerR3pBSHFpoRzCzUA3nVbrk6EmoNZHqFwosNjKG3A== dependencies: p-finally "^1.0.0" parse-asn1@^5.0.0: version "5.1.0" - resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.0.tgz#37c4f9b7ed3ab65c74817b5f2480937fbf97c712" - integrity sha1-N8T5t+06tlx0gXtfJICTf7+XxxI= + resolved "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.0.tgz" + integrity sha1-N8T5t+06tlx0gXtfJICTf7+XxxI= sha512-YWem2SHsJdkQViMUKu+7enuZvLZmrIneY6FATMbuZ/CgH7UVoAE/8A1kvdClCkuyNjaYtLsczBaRUNWel/vvtw== dependencies: asn1.js "^4.0.0" browserify-aes "^1.0.0" @@ -6132,8 +5752,8 @@ parse-asn1@^5.0.0: parse-glob@^3.0.4: version "3.0.4" - resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" - integrity sha1-ssN2z7EfNVE7rdFz7wu246OIORw= + resolved "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz" + integrity sha1-ssN2z7EfNVE7rdFz7wu246OIORw= sha512-FC5TeK0AwXzq3tUBFtH74naWkPQCEWs4K+xMxWZBlKDWu0bVHXGZa+KKqxKidd7xwhdZ19ZNuF2uO1M/r196HA== dependencies: glob-base "^0.3.0" is-dotfile "^1.0.0" @@ -6142,117 +5762,117 @@ parse-glob@^3.0.4: parse-json@^2.1.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" - integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck= + resolved "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz" + integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck= sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ== dependencies: error-ex "^1.2.0" parse-passwd@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" - integrity sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY= + resolved "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz" + integrity sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY= sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q== pascalcase@^0.1.1: version "0.1.1" - resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" - integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= + resolved "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz" + integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw== path-dirname@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" - integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= + resolved "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz" + integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q== path-exists@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" - integrity sha1-D+tsZPD8UY2adU3V77YscCJ2H0s= + resolved "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz" + integrity sha1-D+tsZPD8UY2adU3V77YscCJ2H0s= sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ== dependencies: pinkie-promise "^2.0.0" path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= + resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" + integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== path-is-inside@^1.0.1: version "1.0.2" - resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" - integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= + resolved "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz" + integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w== path-parse@^1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1" - integrity sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME= + resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz" + integrity sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME= sha512-u4e4H/UUeMbJ1UnBnePf6r4cm4fFZs57BMocUSFeea807JTYk2HJnE9GjUpWHaDZk1OQGoArnWW1yEo9nd57ww== path-to-regexp@^1.7.0: version "1.7.0" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-1.7.0.tgz#59fde0f435badacba103a84e9d3bc64e96b9937d" - integrity sha1-Wf3g9DW62suhA6hOnTvGTpa5k30= + resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz" + integrity sha1-Wf3g9DW62suhA6hOnTvGTpa5k30= sha512-nifX1uj4S9IrK/w3Xe7kKvNEepXivANs9ng60Iq7PU/BlouV3yL/VUhFqTuTq33ykwUqoNcTeGo5vdOBP4jS/Q== dependencies: isarray "0.0.1" pbkdf2@^3.0.3: version "3.0.9" - resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.9.tgz#f2c4b25a600058b3c3773c086c37dbbee1ffe693" - integrity sha1-8sSyWmAAWLPDdzwIbDfbvuH/5pM= + resolved "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.9.tgz" + integrity sha1-8sSyWmAAWLPDdzwIbDfbvuH/5pM= sha512-sga/my2defvIpHceQt0sJSQQ/L3Go0cwTEYp8iYBHOSwGIF2jNeila8OD/hRzrkC4bEZm6HIAaU17TEnWYrvgg== dependencies: create-hmac "^1.1.2" pend@~1.2.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" - integrity sha1-elfrVQpng/kRUzH89GY9XI4AelA= + resolved "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz" + integrity sha1-elfrVQpng/kRUzH89GY9XI4AelA= sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg== performance-now@^0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5" - integrity sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU= + resolved "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz" + integrity sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU= sha512-YHk5ez1hmMR5LOkb9iJkLKqoBlL7WD5M8ljC75ZfzXriuBIVNuecaXuU7e+hOwyqf24Wxhh7Vxgt7Hnw9288Tg== pify@^2.0.0, pify@^2.3.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" - integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= + resolved "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz" + integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog== pify@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" - integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= + resolved "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz" + integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg== pinkie-promise@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" - integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o= + resolved "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz" + integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o= sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw== dependencies: pinkie "^2.0.0" pinkie@^2.0.0: version "2.0.4" - resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" - integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA= + resolved "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz" + integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA= sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg== pkg-dir@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-1.0.0.tgz#7a4b508a8d5bb2d629d447056ff4e9c9314cf3d4" - integrity sha1-ektQio1bstYp1EcFb/TpyTFM89Q= + resolved "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz" + integrity sha1-ektQio1bstYp1EcFb/TpyTFM89Q= sha512-c6pv3OE78mcZ92ckebVDqg0aWSoKhOTbwCV6qbCWMk546mAL9pZln0+QsN/yQ7fkucd4+yJPLrCBXNt8Ruk+Eg== dependencies: find-up "^1.0.0" pkg-up@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-1.0.0.tgz#3e08fb461525c4421624a33b9f7e6d0af5b05a26" - integrity sha1-Pgj7RhUlxEIWJKM7n35tCvWwWiY= + resolved "https://registry.npmjs.org/pkg-up/-/pkg-up-1.0.0.tgz" + integrity sha1-Pgj7RhUlxEIWJKM7n35tCvWwWiY= sha512-L+d849d9lz20hnRpUnWBRXOh+mAvygQpK7UuXiw+6QbPwL55RVgl+G+V936wCzs/6J7fj0pvgLY9OknZ+FqaNA== dependencies: find-up "^1.0.0" pluralize@^1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-1.2.1.tgz#d1a21483fd22bb41e58a12fa3421823140897c45" - integrity sha1-0aIUg/0iu0HlihL6NCGCMUCJfEU= + resolved "https://registry.npmjs.org/pluralize/-/pluralize-1.2.1.tgz" + integrity sha1-0aIUg/0iu0HlihL6NCGCMUCJfEU= sha512-TH+BeeL6Ct98C7as35JbZLf8lgsRzlNJb5gklRIGHKaPkGl1esOKBc5ALUMd+q08Sr6tiEKM+Icbsxg5vuhMKQ== portfinder@^1.0.13: version "1.0.13" - resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.13.tgz#bb32ecd87c27104ae6ee44b5a3ccbf0ebb1aede9" - integrity sha1-uzLs2HwnEErm7kS1o8y/Drsa7ek= + resolved "https://registry.npmjs.org/portfinder/-/portfinder-1.0.13.tgz" + integrity sha1-uzLs2HwnEErm7kS1o8y/Drsa7ek= sha512-ULY4nnWaco7FwsQh6V0Gm0wTvMcCAT3GIsadt8Gqrrc4XJSXkC9XLHzAE1oMAtVS68jnrAjDypYfVPVP1JeTmA== dependencies: async "^1.5.2" debug "^2.2.0" @@ -6260,63 +5880,58 @@ portfinder@^1.0.13: posix-character-classes@^0.1.0: version "0.1.1" - resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" - integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= + resolved "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz" + integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== prelude-ls@~1.1.2: version "1.1.2" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" - integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= + resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz" + integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w== prepend-http@^1.0.1: version "1.0.4" - resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" - integrity sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw= + resolved "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz" + integrity sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw= sha512-PhmXi5XmoyKw1Un4E+opM2KcsJInDvKyuOumcjjw3waw86ZNjHwVUOOWLc4bCzLdcKNaWBH9e99sbWzDQsVaYg== preserve@^0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" - integrity sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks= + resolved "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz" + integrity sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks= sha512-s/46sYeylUfHNjI+sA/78FAHlmIuKqI9wNnzEOGehAlUUYeObv5C2mOinXBjyUyWmJ2SfcS2/ydApH4hTF4WXQ== private@^0.1.6, private@^0.1.7: version "0.1.7" - resolved "https://registry.yarnpkg.com/private/-/private-0.1.7.tgz#68ce5e8a1ef0a23bb570cc28537b5332aba63ef1" - integrity sha1-aM5eih7woju1cMwoU3tTMqumPvE= + resolved "https://registry.npmjs.org/private/-/private-0.1.7.tgz" + integrity sha1-aM5eih7woju1cMwoU3tTMqumPvE= sha512-YmFOCNzqPkis1UxGH6pr8zN4DLoFNcJPvrD+ZLr7aThaOpaHufbWy+UhCa6PM0XszYIWkcJZUg40eKHR5+w+8w== process-es6@^0.11.2, process-es6@^0.11.3: version "0.11.6" - resolved "https://registry.yarnpkg.com/process-es6/-/process-es6-0.11.6.tgz#c6bb389f9a951f82bd4eb169600105bd2ff9c778" - integrity sha1-xrs4n5qVH4K9TrFpYAEFvS/5x3g= + resolved "https://registry.npmjs.org/process-es6/-/process-es6-0.11.6.tgz" + integrity sha1-xrs4n5qVH4K9TrFpYAEFvS/5x3g= sha512-GYBRQtL4v3wgigq10Pv58jmTbFXlIiTbSfgnNqZLY0ldUPqy1rRxDI5fCjoCpnM6TqmHQI8ydzTBXW86OYc0gA== process-nextick-args@~1.0.6: version "1.0.7" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" - integrity sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M= - -process-nextick-args@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" - integrity sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw== + resolved "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz" + integrity sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M= sha512-yN0WQmuCX63LP/TMvAg31nvT6m4vDqJEiiv2CAZqWOGNWutc9DfDk1NPYYmKUFmaVM2UwDowH4u5AHWYP/jxKw== -progress@1.1.8, progress@^1.1.8: +progress@^1.1.8, progress@1.1.8: version "1.1.8" - resolved "https://registry.yarnpkg.com/progress/-/progress-1.1.8.tgz#e260c78f6161cdd9b0e56cc3e0a85de17c7a57be" - integrity sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74= + resolved "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz" + integrity sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74= sha512-UdA8mJ4weIkUBO224tIarHzuHs4HuYiJvsuGT7j/SPQiUJVjYvNDBIPa0hAorduOfjGohB/qHWRa/lrrWX/mXw== proto-list@~1.2.1: version "1.2.4" - resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" - integrity sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk= + resolved "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz" + integrity sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk= sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA== prr@~0.0.0: version "0.0.0" - resolved "https://registry.yarnpkg.com/prr/-/prr-0.0.0.tgz#1a84b85908325501411853d0081ee3fa86e2926a" - integrity sha1-GoS4WQgyVQFBGFPQCB7j+obikmo= + resolved "https://registry.npmjs.org/prr/-/prr-0.0.0.tgz" + integrity sha1-GoS4WQgyVQFBGFPQCB7j+obikmo= sha512-LmUECmrW7RVj6mDWKjTXfKug7TFGdiz9P18HMcO4RHL+RW7MCOGNvpj5j47Rnp6ne6r4fZ2VzyUWEpKbg+tsjQ== public-encrypt@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.0.tgz#39f699f3a46560dd5ebacbca693caf7c65c18cc6" - integrity sha1-OfaZ86RlYN1eusvKaTyvfGXBjMY= + resolved "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.0.tgz" + integrity sha1-OfaZ86RlYN1eusvKaTyvfGXBjMY= sha512-jypsKydIz+OGpL8/PLPlYtlOP8Sqx54lQa+46srROOvUj02byeX+7RoZH49emN9OZSFiKohPLDMTzWK4JNR5Zg== dependencies: bn.js "^4.1.0" browserify-rsa "^4.0.0" @@ -6324,44 +5939,44 @@ public-encrypt@^4.0.0: parse-asn1 "^5.0.0" randombytes "^2.0.1" -punycode@1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" - integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= - punycode@^1.4.1: version "1.4.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" - integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= + resolved "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz" + integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ== + +punycode@1.3.2: + version "1.3.2" + resolved "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz" + integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw== qs@^6.4.0: version "6.5.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.0.tgz#8d04954d364def3efc55b5a0793e1e2c8b1e6e49" + resolved "https://registry.npmjs.org/qs/-/qs-6.5.0.tgz" integrity sha512-fjVFjW9yhqMhVGwRExCXLhJKrLlkYSaxNWdyc9rmHlrVZbk35YHH312dFd7191uQeXkI3mKLZTIbSvIeFwFemg== qs@~2.3.1, qs@~2.3.3: version "2.3.3" - resolved "https://registry.yarnpkg.com/qs/-/qs-2.3.3.tgz#e9e85adbe75da0bbe4c8e0476a086290f863b404" - integrity sha1-6eha2+ddoLvkyOBHaghikPhjtAQ= + resolved "https://registry.npmjs.org/qs/-/qs-2.3.3.tgz" + integrity sha1-6eha2+ddoLvkyOBHaghikPhjtAQ= sha512-f5M0HQqZWkzU8GELTY8LyMrGkr3bPjKoFtTkwUEqJQbcljbeK8M7mliP9Ia2xoOI6oMerp+QPS7oYJtpGmWe/A== qs@~6.4.0: version "6.4.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233" - integrity sha1-E+JtKK1rD/qpExLNO/cI7TUecjM= + resolved "https://registry.npmjs.org/qs/-/qs-6.4.0.tgz" + integrity sha1-E+JtKK1rD/qpExLNO/cI7TUecjM= sha512-Qs6dfgR5OksK/PSxl1kGxiZgEQe8RqJMB9wZqVlKQfU+zzV+HY77pWJnoJENACKDQByWdpr8ZPIh1TBi4lpiSQ== querystring@0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" - integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= + resolved "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz" + integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g== ramda@^0.21.0: version "0.21.0" - resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.21.0.tgz#a001abedb3ff61077d4ff1d577d44de77e8d0a35" - integrity sha1-oAGr7bP/YQd9T/HVd9RN536NCjU= + resolved "https://registry.npmjs.org/ramda/-/ramda-0.21.0.tgz" + integrity sha1-oAGr7bP/YQd9T/HVd9RN536NCjU= sha512-HGd5aczYKQXGILB+abY290V7Xz62eFajpa6AtMdwEmQSakJmgSO7ks4eI3HdR34j+X2Vz4Thp9VAJbrCAMbO2w== randomatic@^3.0.0: version "3.1.1" - resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-3.1.1.tgz#b776efc59375984e36c537b2f51a1f0aff0da1ed" + resolved "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz" integrity sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw== dependencies: is-number "^4.0.0" @@ -6370,94 +5985,101 @@ randomatic@^3.0.0: randombytes@^2.0.0, randombytes@^2.0.1: version "2.0.3" - resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.3.tgz#674c99760901c3c4112771a31e521dc349cc09ec" - integrity sha1-Z0yZdgkBw8QRJ3GjHlIdw0nMCew= + resolved "https://registry.npmjs.org/randombytes/-/randombytes-2.0.3.tgz" + integrity sha1-Z0yZdgkBw8QRJ3GjHlIdw0nMCew= sha512-lDVjxQQFoCG1jcrP06LNo2lbWp4QTShEXnhActFBwYuHprllQV6VUpwreApsYqCgD+N1mHoqJ/BI/4eV4R2GYg== raw-body@~1.1.0: version "1.1.7" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-1.1.7.tgz#1d027c2bfa116acc6623bca8f00016572a87d425" - integrity sha1-HQJ8K/oRasxmI7yo8AAWVyqH1CU= + resolved "https://registry.npmjs.org/raw-body/-/raw-body-1.1.7.tgz" + integrity sha1-HQJ8K/oRasxmI7yo8AAWVyqH1CU= sha512-WmJJU2e9Y6M5UzTOkHaM7xJGAPQD8PNzx3bAd2+uhZAim6wDk6dAZxPVYLF67XhbR4hmKGh33Lpmh4XWrCH5Mg== dependencies: bytes "1" string_decoder "0.10" rc@^1.1.2: version "1.2.0" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.0.tgz#c7de973b7b46297c041366b2fd3d2363b1697c66" - integrity sha1-x96XO3tGKXwEE2ay/T0jY7FpfGY= + resolved "https://registry.npmjs.org/rc/-/rc-1.2.0.tgz" + integrity sha1-x96XO3tGKXwEE2ay/T0jY7FpfGY= sha512-pNtp0lTaeanPwd8KcRWvIN4laa0PZkdHn49JeC8wdNBibqnnAMUThZHPs3+Qdw8UdPE4lvzgF9CdMURaUhUtMQ== dependencies: deep-extend "~0.4.0" ini "~1.3.0" minimist "^1.2.0" strip-json-comments "~2.0.1" -rc@^1.2.7: - version "1.2.8" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" - integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== - dependencies: - deep-extend "^0.6.0" - ini "~1.3.0" - minimist "^1.2.0" - strip-json-comments "~2.0.1" - read-all-stream@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/read-all-stream/-/read-all-stream-3.1.0.tgz#35c3e177f2078ef789ee4bfafa4373074eaef4fa" - integrity sha1-NcPhd/IHjveJ7kv6+kNzB06u9Po= + resolved "https://registry.npmjs.org/read-all-stream/-/read-all-stream-3.1.0.tgz" + integrity sha1-NcPhd/IHjveJ7kv6+kNzB06u9Po= sha512-DI1drPHbmBcUDWrJ7ull/F2Qb8HkwBncVx8/RpKYFSIACYaVRQReISYPdZz/mt1y1+qMCOrfReTopERmaxtP6w== dependencies: pinkie-promise "^2.0.0" readable-stream "^2.0.0" -"readable-stream@>=1.0.33-1 <1.1.0-0", readable-stream@~1.0.26, readable-stream@~1.0.26-4: +readable-stream@^1.0.26-4: + version "1.1.14" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz" + integrity sha1-fPTFTvZI44EwhMY23SB54WbAgdk= sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ== + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "0.0.1" + string_decoder "~0.10.x" + +readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.4, readable-stream@^2.0.5, readable-stream@^2.1.5, readable-stream@^2.2.2: + version "2.2.6" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.6.tgz" + integrity sha1-i0Ou125xSDk40SqNRsbPGgCx+BY= sha512-stKjqcfdLrCTp8+25wOo2fZeU3dQ1e968LX6qknqzd3PKj/e+CKJTskQ3kPlTW3udhLqj6om9VqXEw/VtXZYrw== + dependencies: + buffer-shims "^1.0.0" + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "~1.0.0" + process-nextick-args "~1.0.6" + string_decoder "~0.10.x" + util-deprecate "~1.0.1" + +"readable-stream@>=1.0.33-1 <1.1.0-0": version "1.0.34" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" - integrity sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw= + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz" + integrity sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw= sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg== dependencies: core-util-is "~1.0.0" inherits "~2.0.1" isarray "0.0.1" string_decoder "~0.10.x" -readable-stream@^1.0.26-4, readable-stream@~1.1.9: - version "1.1.14" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" - integrity sha1-fPTFTvZI44EwhMY23SB54WbAgdk= +readable-stream@~1.0.26-4: + version "1.0.34" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz" + integrity sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw= sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg== dependencies: core-util-is "~1.0.0" inherits "~2.0.1" isarray "0.0.1" string_decoder "~0.10.x" -readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.4, readable-stream@^2.0.5, readable-stream@^2.1.5, readable-stream@^2.2.2: - version "2.2.6" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.6.tgz#8b43aed76e71483938d12a8d46c6cf1a00b1f816" - integrity sha1-i0Ou125xSDk40SqNRsbPGgCx+BY= +readable-stream@~1.0.26: + version "1.0.34" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz" + integrity sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw= sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg== dependencies: - buffer-shims "^1.0.0" core-util-is "~1.0.0" inherits "~2.0.1" - isarray "~1.0.0" - process-nextick-args "~1.0.6" + isarray "0.0.1" string_decoder "~0.10.x" - util-deprecate "~1.0.1" -readable-stream@^2.0.2, readable-stream@^2.0.6: - version "2.3.6" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" - integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw== +readable-stream@~1.1.9: + version "1.1.14" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz" + integrity sha1-fPTFTvZI44EwhMY23SB54WbAgdk= sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ== dependencies: core-util-is "~1.0.0" - inherits "~2.0.3" - isarray "~1.0.0" - process-nextick-args "~2.0.0" - safe-buffer "~5.1.1" - string_decoder "~1.1.1" - util-deprecate "~1.0.1" + inherits "~2.0.1" + isarray "0.0.1" + string_decoder "~0.10.x" readdirp@^2.0.0: version "2.2.1" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" + resolved "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz" integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ== dependencies: graceful-fs "^4.1.11" @@ -6466,8 +6088,8 @@ readdirp@^2.0.0: readline2@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/readline2/-/readline2-1.0.1.tgz#41059608ffc154757b715d9989d199ffbf372e35" - integrity sha1-QQWWCP/BVHV7cV2ZidGZ/783LjU= + resolved "https://registry.npmjs.org/readline2/-/readline2-1.0.1.tgz" + integrity sha1-QQWWCP/BVHV7cV2ZidGZ/783LjU= sha512-8/td4MmwUB6PkZUbV25uKz7dfrmjYWxsW8DVfibWdlHRk/l/DfHKn4pU+dfcoGLFgWOdyGCzINRQD7jn+Bv+/g== dependencies: code-point-at "^1.0.0" is-fullwidth-code-point "^1.0.0" @@ -6475,52 +6097,47 @@ readline2@^1.0.1: reduce-extract@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/reduce-extract/-/reduce-extract-1.0.0.tgz#67f2385beda65061b5f5f4312662e8b080ca1525" - integrity sha1-Z/I4W+2mUGG19fQxJmLosIDKFSU= + resolved "https://registry.npmjs.org/reduce-extract/-/reduce-extract-1.0.0.tgz" + integrity sha1-Z/I4W+2mUGG19fQxJmLosIDKFSU= sha512-QF8vjWx3wnRSL5uFMyCjDeDc5EBMiryoT9tz94VvgjKfzecHAVnqmXAwQDcr7X4JmLc2cjkjFGCVzhMqDjgR9g== dependencies: test-value "^1.0.1" reduce-flatten@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/reduce-flatten/-/reduce-flatten-1.0.1.tgz#258c78efd153ddf93cb561237f61184f3696e327" - integrity sha1-JYx479FT3fk8tWEjf2EYTzaW4yc= + resolved "https://registry.npmjs.org/reduce-flatten/-/reduce-flatten-1.0.1.tgz" + integrity sha1-JYx479FT3fk8tWEjf2EYTzaW4yc= sha512-j5WfFJfc9CoXv/WbwVLHq74i/hdTUpy+iNC534LxczMRP67vJeK3V9JOdnL0N1cIRbn9mYhE2yVjvvKXDxvNXQ== reduce-flatten@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/reduce-flatten/-/reduce-flatten-2.0.0.tgz#734fd84e65f375d7ca4465c69798c25c9d10ae27" + resolved "https://registry.npmjs.org/reduce-flatten/-/reduce-flatten-2.0.0.tgz" integrity sha512-EJ4UNY/U1t2P/2k6oqotuX2Cc3T6nxJwsM0N0asT7dhrtH1ltUxDn4NalSYmPE2rCkVpcf/X6R0wDwcFpzhd4w== reduce-unique@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/reduce-unique/-/reduce-unique-2.0.1.tgz#fb34b90e89297c1e08d75dcf17e9a6443ea71081" + resolved "https://registry.npmjs.org/reduce-unique/-/reduce-unique-2.0.1.tgz" integrity sha512-x4jH/8L1eyZGR785WY+ePtyMNhycl1N2XOLxhCbzZFaqF4AXjLzqSxa2UHgJ2ZVR/HHyPOvl1L7xRnW8ye5MdA== reduce-without@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/reduce-without/-/reduce-without-1.0.1.tgz#68ad0ead11855c9a37d4e8256c15bbf87972fc8c" - integrity sha1-aK0OrRGFXJo31OglbBW7+Hly/Iw= + resolved "https://registry.npmjs.org/reduce-without/-/reduce-without-1.0.1.tgz" + integrity sha1-aK0OrRGFXJo31OglbBW7+Hly/Iw= sha512-zQv5y/cf85sxvdrKPlfcRzlDn/OqKFThNimYmsS3flmkioKvkUGn2Qg9cJVoQiEvdxFGLE0MQER/9fZ9sUqdxg== dependencies: test-value "^2.0.0" regenerate@^1.2.1: version "1.3.2" - resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.2.tgz#d1941c67bad437e1be76433add5b385f95b19260" - integrity sha1-0ZQcZ7rUN+G+dkM63Vs4X5WxkmA= - -regenerator-runtime@^0.10.0: - version "0.10.3" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.3.tgz#8c4367a904b51ea62a908ac310bf99ff90a82a3e" - integrity sha1-jENnqQS1HqYqkIrDEL+Z/5CoKj4= + resolved "https://registry.npmjs.org/regenerate/-/regenerate-1.3.2.tgz" + integrity sha1-0ZQcZ7rUN+G+dkM63Vs4X5WxkmA= sha512-ZjGdBdKBADWnb6oF2uE/OjY3k8Nm4yY4nXhY+cq7NqheN7x23bcm/obALbqev4Kd3bOvWIvYLmUacnc8CI07oA== regenerator-runtime@^0.11.0: version "0.11.0" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.0.tgz#7e54fe5b5ccd5d6624ea6255c3473be090b802e1" + resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.0.tgz" integrity sha512-/aA0kLeRb5N9K0d4fw7ooEbI+xDe+DKD499EQqygGqeS8N3xto15p09uY2xj7ixP81sNPXvRLnAQIqdVStgb1A== regenerator-transform@0.9.8: version "0.9.8" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.9.8.tgz#0f88bb2bc03932ddb7b6b7312e68078f01026d6c" - integrity sha1-D4i7K8A5Mt23trcxLmgHjwECbWw= + resolved "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.9.8.tgz" + integrity sha1-D4i7K8A5Mt23trcxLmgHjwECbWw= sha512-ScQwQyMsJMUF1hVbGWyCPKOx6uCXwfIryUzhX13vea8XmYkiJKsOUMR3S+8Dhj6cYtXhsDiU93FtZzaSITJ+Rg== dependencies: babel-runtime "^6.18.0" babel-types "^6.19.0" @@ -6528,14 +6145,14 @@ regenerator-transform@0.9.8: regex-cache@^0.4.2: version "0.4.4" - resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.4.tgz#75bdc58a2a1496cec48a12835bc54c8d562336dd" + resolved "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz" integrity sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ== dependencies: is-equal-shallow "^0.1.3" regex-not@^1.0.0, regex-not@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" + resolved "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz" integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== dependencies: extend-shallow "^3.0.2" @@ -6543,8 +6160,8 @@ regex-not@^1.0.0, regex-not@^1.0.2: regexpu-core@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240" - integrity sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA= + resolved "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz" + integrity sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA= sha512-tJ9+S4oKjxY8IZ9jmjnp/mtytu1u3iyIQAfmI51IKWH6bFf7XR1ybtaO6j7INhZKXOTYADk7V5qxaqLkmNxiZQ== dependencies: regenerate "^1.2.1" regjsgen "^0.2.0" @@ -6552,81 +6169,59 @@ regexpu-core@^2.0.0: regjsgen@^0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" - integrity sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc= + resolved "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz" + integrity sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc= sha512-x+Y3yA24uF68m5GA+tBjbGYo64xXVJpbToBaWCoSNSc1hdk6dfctaRWrNFTVJZIIhL5GxW8zwjoixbnifnK59g== regjsparser@^0.1.4: version "0.1.5" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" - integrity sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw= + resolved "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz" + integrity sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw= sha512-jlQ9gYLfk2p3V5Ag5fYhA7fv7OHzd1KUH0PRP46xc3TgwjwgROIW572AfYg/X9kaNq/LJnu6oJcFRXlIrGoTRw== dependencies: jsesc "~0.5.0" remove-trailing-separator@^1.0.1: version "1.1.0" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" - integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= + resolved "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz" + integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw== repeat-element@^1.1.2: version "1.1.3" - resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" + resolved "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz" integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== repeat-string@^1.5.2, repeat-string@^1.6.1: version "1.6.1" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" - integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= + resolved "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz" + integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w== repeating@^1.1.0: version "1.1.3" - resolved "https://registry.yarnpkg.com/repeating/-/repeating-1.1.3.tgz#3d4114218877537494f97f77f9785fab810fa4ac" - integrity sha1-PUEUIYh3U3SU+X93+Xhfq4EPpKw= + resolved "https://registry.npmjs.org/repeating/-/repeating-1.1.3.tgz" + integrity sha1-PUEUIYh3U3SU+X93+Xhfq4EPpKw= sha512-Nh30JLeMHdoI+AsQ5eblhZ7YlTsM9wiJQe/AHIunlK3KWzvXhXb36IJ7K1IOeRjIOtzMjdUHjwXUFxKJoPTSOg== dependencies: is-finite "^1.0.0" repeating@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" - integrity sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo= + resolved "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz" + integrity sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo= sha512-ZqtSMuVybkISo2OWvqvm7iHSWngvdaW3IpsT9/uP8v4gMi591LY6h35wdOfvQdWCKFWZWm2Y1Opp4kV7vQKT6A== dependencies: is-finite "^1.0.0" replace-ext@0.0.1: version "0.0.1" - resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-0.0.1.tgz#29bbd92078a739f0bcce2b4ee41e837953522924" - integrity sha1-KbvZIHinOfC8zitO5B6DeVNSKSQ= + resolved "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz" + integrity sha1-KbvZIHinOfC8zitO5B6DeVNSKSQ= sha512-AFBWBy9EVRTa/LhEcG8QDP3FvpwZqmvN2QFDuJswFeaVhWnZMp8q3E6Zd90SR04PlIwfGdyVjNyLPyen/ek5CQ== req-all@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/req-all/-/req-all-0.1.0.tgz#130051e2ace58a02eacbfc9d448577a736a9273a" - integrity sha1-EwBR4qzligLqy/ydRIV3pzapJzo= - -request@2.51.0: - version "2.51.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.51.0.tgz#35d00bbecc012e55f907b1bd9e0dbd577bfef26e" - integrity sha1-NdALvswBLlX5B7G9ng29V3v+8m4= - dependencies: - aws-sign2 "~0.5.0" - bl "~0.9.0" - caseless "~0.8.0" - combined-stream "~0.0.5" - forever-agent "~0.5.0" - form-data "~0.2.0" - hawk "1.1.1" - http-signature "~0.10.0" - json-stringify-safe "~5.0.0" - mime-types "~1.0.1" - node-uuid "~1.4.0" - oauth-sign "~0.5.0" - qs "~2.3.1" - stringstream "~0.0.4" - tough-cookie ">=0.12.0" - tunnel-agent "~0.4.0" + resolved "https://registry.npmjs.org/req-all/-/req-all-0.1.0.tgz" + integrity sha1-EwBR4qzligLqy/ydRIV3pzapJzo= sha512-ZdvPr8uXy9ujX3KujwE2P1HWkMYgogIhqeAeyb47MqWjSfyxERSm0TNbN/IapCCmWDufXab04AYrRgObaJCJ6Q== request@^2.78.0: version "2.81.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0" - integrity sha1-xpKJRqDgbF+Nb4qTM0af/aRimKA= + resolved "https://registry.npmjs.org/request/-/request-2.81.0.tgz" + integrity sha1-xpKJRqDgbF+Nb4qTM0af/aRimKA= sha512-IZnsR7voF0miGSu29EXPRgPTuEsI/+aibNSBbN1pplrfartF5wDYGADz3iD9vmBVf2r00rckWZf8BtS5kk7Niw== dependencies: aws-sign2 "~0.6.0" aws4 "^1.2.1" @@ -6651,110 +6246,118 @@ request@^2.78.0: tunnel-agent "^0.6.0" uuid "^3.0.0" +request@2.51.0: + version "2.51.0" + resolved "https://registry.npmjs.org/request/-/request-2.51.0.tgz" + integrity sha1-NdALvswBLlX5B7G9ng29V3v+8m4= sha512-6pfShjLfn6ThOlPHyQo7nBxEwTa2PzvqHruxQS51TrADjWj3qetRZ2Ae5gRzMF7N2fKG5Ww7su+Z6jA3sFv0Gw== + dependencies: + aws-sign2 "~0.5.0" + bl "~0.9.0" + caseless "~0.8.0" + combined-stream "~0.0.5" + forever-agent "~0.5.0" + form-data "~0.2.0" + hawk "1.1.1" + http-signature "~0.10.0" + json-stringify-safe "~5.0.0" + mime-types "~1.0.1" + node-uuid "~1.4.0" + oauth-sign "~0.5.0" + qs "~2.3.1" + stringstream "~0.0.4" + tough-cookie ">=0.12.0" + tunnel-agent "~0.4.0" + require-relative@0.8.7: version "0.8.7" - resolved "https://registry.yarnpkg.com/require-relative/-/require-relative-0.8.7.tgz#7999539fc9e047a37928fa196f8e1563dabd36de" - integrity sha1-eZlTn8ngR6N5KPoZb44VY9q9Nt4= + resolved "https://registry.npmjs.org/require-relative/-/require-relative-0.8.7.tgz" + integrity sha1-eZlTn8ngR6N5KPoZb44VY9q9Nt4= sha512-AKGr4qvHiryxRb19m3PsLRGuKVAbJLUD7E6eOaHkfKhwc+vSgVOCY5xNvm9EkolBKTOf0GrQAZKLimOCz81Khg== require-uncached@^1.0.2: version "1.0.3" - resolved "https://registry.yarnpkg.com/require-uncached/-/require-uncached-1.0.3.tgz#4e0d56d6c9662fd31e43011c4b95aa49955421d3" - integrity sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM= + resolved "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz" + integrity sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM= sha512-Xct+41K3twrbBHdxAgMoOS+cNcoqIjfM2/VxBF4LL2hVph7YsF8VSKyQ3BDFZwEVbok9yeDl2le/qo0S77WG2w== dependencies: caller-path "^0.1.0" resolve-from "^1.0.0" requires-port@1.x.x: version "1.0.0" - resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" - integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8= + resolved "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz" + integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8= sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ== requizzle@^0.2.3: version "0.2.3" - resolved "https://registry.yarnpkg.com/requizzle/-/requizzle-0.2.3.tgz#4675c90aacafb2c036bd39ba2daa4a1cb777fded" + resolved "https://registry.npmjs.org/requizzle/-/requizzle-0.2.3.tgz" integrity sha512-YanoyJjykPxGHii0fZP0uUPEXpvqfBDxWV7s6GKAiiOsiqhX6vHNyW3Qzdmqp/iq/ExbhaGbVrjB4ruEVSM4GQ== dependencies: lodash "^4.17.14" resolve-dir@^0.1.0: version "0.1.1" - resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-0.1.1.tgz#b219259a5602fac5c5c496ad894a6e8cc430261e" - integrity sha1-shklmlYC+sXFxJatiUpujMQwJh4= + resolved "https://registry.npmjs.org/resolve-dir/-/resolve-dir-0.1.1.tgz" + integrity sha1-shklmlYC+sXFxJatiUpujMQwJh4= sha512-QxMPqI6le2u0dCLyiGzgy92kjkkL6zO0XyvHzjdTNH3zM6e5Hz3BwG6+aEyNgiQ5Xz6PwTwgQEj3U50dByPKIA== dependencies: expand-tilde "^1.2.2" global-modules "^0.2.3" resolve-from@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226" - integrity sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY= + resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz" + integrity sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY= sha512-kT10v4dhrlLNcnO084hEjvXCI1wUG9qZLoz2RogxqDQQYy7IxjI/iMUkOtQTNEh6rzHxvdQWHsJyel1pKOVCxg== resolve-url@^0.2.1: version "0.2.1" - resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" - integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= - -resolve@1.1.7: - version "1.1.7" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" - integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs= + resolved "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz" + integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg== resolve@^1.1.6, resolve@^1.1.7: version "1.3.2" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.3.2.tgz#1f0442c9e0cbb8136e87b9305f932f46c7f28235" - integrity sha1-HwRCyeDLuBNuh7kwX5MvRsfygjU= + resolved "https://registry.npmjs.org/resolve/-/resolve-1.3.2.tgz" + integrity sha1-HwRCyeDLuBNuh7kwX5MvRsfygjU= sha512-eKTFjt7CDhKxWDXyXmvmFzsJ8NnsHAji1XK+pvMMxek4LJN4a3LQwFynIq0297xNRPC5JyQXz8HBOtRk4+8AbA== dependencies: path-parse "^1.0.5" +resolve@1.1.7: + version "1.1.7" + resolved "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz" + integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs= sha512-9znBF0vBcaSN3W2j7wKvdERPwqTxSpCq+if5C0WoTCyV9n24rua28jeuQ2pL/HOf+yUe/Mef+H/5p60K0Id3bg== + restore-cursor@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-1.0.1.tgz#34661f46886327fed2991479152252df92daa541" - integrity sha1-NGYfRohjJ/7SmRR5FSJS35LapUE= + resolved "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz" + integrity sha1-NGYfRohjJ/7SmRR5FSJS35LapUE= sha512-reSjH4HuiFlxlaBaFCiS6O76ZGG2ygKoSlCsipKdaZuKSPx/+bt9mULkn4l0asVzbEfQQmXRg6Wp6gv6m0wElw== dependencies: exit-hook "^1.0.0" onetime "^1.0.0" ret@~0.1.10: version "0.1.15" - resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" + resolved "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz" integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== -rimraf@2.6.1, rimraf@^2.2.8: +rimraf@^2.2.6, rimraf@^2.2.8, rimraf@2.6.1: version "2.6.1" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.1.tgz#c2338ec643df7a1b7fe5c54fa86f57428a55f33d" - integrity sha1-wjOOxkPfeht/5cVPqG9XQopV8z0= - dependencies: - glob "^7.0.5" - -rimraf@^2.2.6: - version "2.5.4" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.5.4.tgz#96800093cbf1a0c86bd95b4625467535c29dfa04" - integrity sha1-loAAk8vxoMhr2VtGJUZ1NcKd+gQ= - dependencies: - glob "^7.0.5" - -rimraf@^2.6.1: - version "2.6.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" - integrity sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w== + resolved "https://registry.npmjs.org/rimraf/-/rimraf-2.6.1.tgz" + integrity sha1-wjOOxkPfeht/5cVPqG9XQopV8z0= sha512-5QIcndZ8am2WyseL6lln/utl51SwRBQs/at+zi1UnhsnPyZcAID+g0PZrKdb+kJn2fo/CwgyJweR8sP36Jer5g== dependencies: glob "^7.0.5" ripemd160@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-1.0.1.tgz#93a4bbd4942bc574b69a8fa57c71de10ecca7d6e" - integrity sha1-k6S71JQrxXS2mo+lfHHeEOzKfW4= + resolved "https://registry.npmjs.org/ripemd160/-/ripemd160-1.0.1.tgz" + integrity sha1-k6S71JQrxXS2mo+lfHHeEOzKfW4= sha512-J0YlH2ow/i7d5PJX9RC1XnjmZc7cNNYWe89PIlFszvHeiEtxzA1/VYePkjQ7l1SkUejAcHeDo3IVp2WIzstXXQ== rollup-plugin-babel@3.0.2: version "3.0.2" - resolved "https://registry.yarnpkg.com/rollup-plugin-babel/-/rollup-plugin-babel-3.0.2.tgz#a2765dea0eaa8aece351c983573300d17497495b" + resolved "https://registry.npmjs.org/rollup-plugin-babel/-/rollup-plugin-babel-3.0.2.tgz" integrity sha512-ALGPBFtwJZcYHsNPM6RGJlEncTzAARPvZOGjNPZgDe5hS5t6sJGjiOWibEFVEz5LQN7S7spvCBILaS4N1Cql2w== dependencies: rollup-pluginutils "^1.5.0" rollup-plugin-commonjs@8.1.0: version "8.1.0" - resolved "https://registry.yarnpkg.com/rollup-plugin-commonjs/-/rollup-plugin-commonjs-8.1.0.tgz#8ac9a87e6ea4c0d136e3e0e25ef41058957622b0" + resolved "https://registry.npmjs.org/rollup-plugin-commonjs/-/rollup-plugin-commonjs-8.1.0.tgz" integrity sha512-mxLU0oCZPakY+o1P9OeVG+yT7bGOFyRQf6pk3xden2+sEG2NP40CrKWw1h/BHZuK7yegRcOJMCfr/uzLmodrGQ== dependencies: acorn "^4.0.1" @@ -6765,7 +6368,7 @@ rollup-plugin-commonjs@8.1.0: rollup-plugin-graphql-js-client-compiler@0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/rollup-plugin-graphql-js-client-compiler/-/rollup-plugin-graphql-js-client-compiler-0.2.0.tgz#77d02e87c65c3f56274f8e7e04a0ab21e5fcd9cc" + resolved "https://registry.npmjs.org/rollup-plugin-graphql-js-client-compiler/-/rollup-plugin-graphql-js-client-compiler-0.2.0.tgz" integrity sha512-3wC77mD62XeUijvfxTlMNkyjmKh3Lg4I0wgqWcJ/l1ZXnvTJ3q5X5Sgb15gCwBK57lNJP21zRh6CZTcVM20yAw== dependencies: glob "7.1.2" @@ -6774,22 +6377,22 @@ rollup-plugin-graphql-js-client-compiler@0.2.0: rollup-plugin-json@2.3.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/rollup-plugin-json/-/rollup-plugin-json-2.3.0.tgz#3c07a452c1b5391be28006fbfff3644056ce0add" + resolved "https://registry.npmjs.org/rollup-plugin-json/-/rollup-plugin-json-2.3.0.tgz" integrity sha512-W45nZH7lmXgkSR/DkeyF4ks0YWFrMysdjUT049gTuAg+lwUEDBKI2+PztqW8UDSMlXCAeEONsLzpDDyBy9m+9A== dependencies: rollup-pluginutils "^2.0.1" rollup-plugin-multi-entry@2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/rollup-plugin-multi-entry/-/rollup-plugin-multi-entry-2.0.1.tgz#4b3aea8ddc5afc9b7f9ffbfb1441c04ef39071b4" - integrity sha1-Szrqjdxa/Jt/n/v7FEHATvOQcbQ= + resolved "https://registry.npmjs.org/rollup-plugin-multi-entry/-/rollup-plugin-multi-entry-2.0.1.tgz" + integrity sha1-Szrqjdxa/Jt/n/v7FEHATvOQcbQ= sha512-UZ32GhAJcPjNuwUwvdNFW1nk9sMz45GzB0seOVYn6uKJkKorE9gkoNN6xuBnh2QV4One/rkiCxTMkiYJz7fqeA== dependencies: matched "^0.4.3" rollup-plugin-node-builtins@2.1.2: version "2.1.2" - resolved "https://registry.yarnpkg.com/rollup-plugin-node-builtins/-/rollup-plugin-node-builtins-2.1.2.tgz#24a1fed4a43257b6b64371d8abc6ce1ab14597e9" - integrity sha1-JKH+1KQyV7a2Q3HYq8bOGrFFl+k= + resolved "https://registry.npmjs.org/rollup-plugin-node-builtins/-/rollup-plugin-node-builtins-2.1.2.tgz" + integrity sha1-JKH+1KQyV7a2Q3HYq8bOGrFFl+k= sha512-bxdnJw8jIivr2yEyt8IZSGqZkygIJOGAWypXvHXnwKAbUcN4Q/dGTx7K0oAJryC/m6aq6tKutltSeXtuogU6sw== dependencies: browserify-fs "^1.0.0" buffer-es6 "^4.9.2" @@ -6798,8 +6401,8 @@ rollup-plugin-node-builtins@2.1.2: rollup-plugin-node-globals@1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/rollup-plugin-node-globals/-/rollup-plugin-node-globals-1.1.0.tgz#7efd8d611d132737829e804e9f51f50962af451f" - integrity sha1-fv2NYR0TJzeCnoBOn1H1CWKvRR8= + resolved "https://registry.npmjs.org/rollup-plugin-node-globals/-/rollup-plugin-node-globals-1.1.0.tgz" + integrity sha1-fv2NYR0TJzeCnoBOn1H1CWKvRR8= sha512-zWwjJX0SVOwdYdzFoF35IpiHxt2cBebHWSDIPgQZjeC7MGhcOdLj8GOCuKo6fxpFDQFyOIIebE2vlXZO7hjUlQ== dependencies: acorn "^4.0.1" buffer-es6 "^4.9.1" @@ -6810,8 +6413,8 @@ rollup-plugin-node-globals@1.1.0: rollup-plugin-node-resolve@3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-3.0.0.tgz#8b897c4c3030d5001277b0514b25d2ca09683ee0" - integrity sha1-i4l8TDAw1QASd7BRSyXSygloPuA= + resolved "https://registry.npmjs.org/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-3.0.0.tgz" + integrity sha1-i4l8TDAw1QASd7BRSyXSygloPuA= sha512-KP4DRp/urF07drXRlm+ouL2pMtpveJ9qzNnKGRxq44q/fbnz+uVEIvS+Qx+6/EPSwcVoC/EjItfx1WDbiewoqg== dependencies: browser-resolve "^1.11.0" builtin-modules "^1.1.0" @@ -6820,48 +6423,56 @@ rollup-plugin-node-resolve@3.0.0: rollup-plugin-remap@0.0.3: version "0.0.3" - resolved "https://registry.yarnpkg.com/rollup-plugin-remap/-/rollup-plugin-remap-0.0.3.tgz#cbf6ad8de8532961cf2b48973117cc884c3a00fa" - integrity sha1-y/atjehTKWHPK0iXMRfMiEw6APo= + resolved "https://registry.npmjs.org/rollup-plugin-remap/-/rollup-plugin-remap-0.0.3.tgz" + integrity sha1-y/atjehTKWHPK0iXMRfMiEw6APo= sha512-maRjr6X8FSbiYKzLiAebUm2WiAf2T7FG6BaFVspqYNNksEM5b/eGEYD9fYwxvdIUA8ckSn9bvbQkEkoLfFETog== dependencies: rollup-pluginutils "1.5.2" rollup-plugin-sizes@0.4.0: version "0.4.0" - resolved "https://registry.yarnpkg.com/rollup-plugin-sizes/-/rollup-plugin-sizes-0.4.0.tgz#2d60c4dd2a9fe7a194c9e6af2fd7d1b646ba2485" - integrity sha1-LWDE3Sqf56GUyeavL9fRtka6JIU= + resolved "https://registry.npmjs.org/rollup-plugin-sizes/-/rollup-plugin-sizes-0.4.0.tgz" + integrity sha1-LWDE3Sqf56GUyeavL9fRtka6JIU= sha512-orUlSlfaM1FSVasw/54a19X2TordD3fDkmYotmx3Sn8ij4TTV9o5tFUuhHDHLjAnit/AMk6NSoSa48+nIXzlgQ== dependencies: filesize "^3.5.10" lodash.foreach "^4.5.0" lodash.sumby "^4.6.0" module-details-from-path "^1.0.3" -rollup-pluginutils@1.5.2, rollup-pluginutils@^1.5.0, rollup-pluginutils@^1.5.2: +rollup-pluginutils@^1.5.0: version "1.5.2" - resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-1.5.2.tgz#1e156e778f94b7255bfa1b3d0178be8f5c552408" - integrity sha1-HhVud4+UtyVb+hs9AXi+j1xVJAg= + resolved "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-1.5.2.tgz" + integrity sha1-HhVud4+UtyVb+hs9AXi+j1xVJAg= sha512-SjdWWWO/CUoMpDy8RUbZ/pSpG68YHmhk5ROKNIoi2En9bJ8bTt3IhYi254RWiTclQmL7Awmrq+rZFOhZkJAHmQ== dependencies: estree-walker "^0.2.1" minimatch "^3.0.2" -rollup-pluginutils@2.0.1: +rollup-pluginutils@^1.5.2: + version "1.5.2" + resolved "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-1.5.2.tgz" + integrity sha1-HhVud4+UtyVb+hs9AXi+j1xVJAg= sha512-SjdWWWO/CUoMpDy8RUbZ/pSpG68YHmhk5ROKNIoi2En9bJ8bTt3IhYi254RWiTclQmL7Awmrq+rZFOhZkJAHmQ== + dependencies: + estree-walker "^0.2.1" + minimatch "^3.0.2" + +rollup-pluginutils@^2.0.1, rollup-pluginutils@2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-2.0.1.tgz#7ec95b3573f6543a46a6461bd9a7c544525d0fc0" - integrity sha1-fslbNXP2VDpGpkYb2afFRFJdD8A= + resolved "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.0.1.tgz" + integrity sha1-fslbNXP2VDpGpkYb2afFRFJdD8A= sha512-EvBHU823Jdlyn3qkMqrlorl4om3QAwclJjZ7w7Zw/0j0r+PL979RORyCv3wDoprDkmzoCHOQjGP6KP9Ek4ca/w== dependencies: estree-walker "^0.3.0" micromatch "^2.3.11" -rollup-pluginutils@^2.0.1: - version "2.3.3" - resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-2.3.3.tgz#3aad9b1eb3e7fe8262820818840bf091e5ae6794" - integrity sha512-2XZwja7b6P5q4RZ5FhyX1+f46xi1Z3qBKigLRZ6VTZjwbN0K1IFGMlwm06Uu0Emcre2Z63l77nq/pzn+KxIEoA== +rollup-pluginutils@1.5.2: + version "1.5.2" + resolved "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-1.5.2.tgz" + integrity sha1-HhVud4+UtyVb+hs9AXi+j1xVJAg= sha512-SjdWWWO/CUoMpDy8RUbZ/pSpG68YHmhk5ROKNIoi2En9bJ8bTt3IhYi254RWiTclQmL7Awmrq+rZFOhZkJAHmQ== dependencies: - estree-walker "^0.5.2" - micromatch "^2.3.11" + estree-walker "^0.2.1" + minimatch "^3.0.2" rollup-watch@4.3.1: version "4.3.1" - resolved "https://registry.yarnpkg.com/rollup-watch/-/rollup-watch-4.3.1.tgz#5aa1eaeab787addf368905d102b39d6fc5ce4a8b" + resolved "https://registry.npmjs.org/rollup-watch/-/rollup-watch-4.3.1.tgz" integrity sha512-6yjnIwfjpSrqA8IafyIu7fsEyeImNR4aDjA1bQ7KWeVuiA+Clfsx8+PGQkyABWIQzmauQ//tIJ5wAxLXsXs8qQ== dependencies: chokidar "^1.7.0" @@ -6870,81 +6481,76 @@ rollup-watch@4.3.1: rollup@0.36.3: version "0.36.3" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-0.36.3.tgz#c89ac479828924ff8f69c1d44541cb4ea2fc11fc" - integrity sha1-yJrEeYKJJP+PacHURUHLTqL8Efw= + resolved "https://registry.npmjs.org/rollup/-/rollup-0.36.3.tgz" + integrity sha1-yJrEeYKJJP+PacHURUHLTqL8Efw= sha512-9OqZCqCi5DYJM2QXWznEANvr1VVyC7/pElDYEhPj+qlJuyV1P4xEdBSIum4+hNZh6x9reXijYIgXeDq7pEi3rw== dependencies: source-map-support "^0.4.0" rollup@0.47.6: version "0.47.6" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-0.47.6.tgz#83b90a1890dd3321a3f8d0b2bd216e88483f33de" + resolved "https://registry.npmjs.org/rollup/-/rollup-0.47.6.tgz" integrity sha512-bH3eWh7MzbiKTQcHQN7Ievqbs/yY7T+ZcJYboBYkp7BkRlAr2DXHPfiqlvlEH/M95giEBpinHEi/s9CVIgYT6w== run-async@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/run-async/-/run-async-0.1.0.tgz#c8ad4a5e110661e402a7d21b530e009f25f8e389" - integrity sha1-yK1KXhEGYeQCp9IbUw4AnyX444k= + resolved "https://registry.npmjs.org/run-async/-/run-async-0.1.0.tgz" + integrity sha1-yK1KXhEGYeQCp9IbUw4AnyX444k= sha512-qOX+w+IxFgpUpJfkv2oGN0+ExPs68F4sZHfaRRx4dDexAQkG83atugKVEylyT5ARees3HBbfmuvnjbrd8j9Wjw== dependencies: once "^1.3.0" rx-lite@^3.1.2: version "3.1.2" - resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-3.1.2.tgz#19ce502ca572665f3b647b10939f97fd1615f102" - integrity sha1-Gc5QLKVyZl87ZHsQk5+X/RYV8QI= - -rx@2.3.24: - version "2.3.24" - resolved "https://registry.yarnpkg.com/rx/-/rx-2.3.24.tgz#14f950a4217d7e35daa71bbcbe58eff68ea4b2b7" - integrity sha1-FPlQpCF9fjXapxu8vljv9o6ksrc= + resolved "https://registry.npmjs.org/rx-lite/-/rx-lite-3.1.2.tgz" + integrity sha1-Gc5QLKVyZl87ZHsQk5+X/RYV8QI= sha512-1I1+G2gteLB8Tkt8YI1sJvSIfa0lWuRtC8GjvtyPBcLSF5jBCCJJqKrpER5JU5r6Bhe+i9/pK3VMuUcXu0kdwQ== rx@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/rx/-/rx-4.1.0.tgz#a5f13ff79ef3b740fe30aa803fb09f98805d4782" - integrity sha1-pfE/957zt0D+MKqAP7CfmIBdR4I= + resolved "https://registry.npmjs.org/rx/-/rx-4.1.0.tgz" + integrity sha1-pfE/957zt0D+MKqAP7CfmIBdR4I= sha512-CiaiuN6gapkdl+cZUr67W6I8jquN4lkak3vtIsIWCl4XIPP8ffsoyN6/+PuGXnQy8Cu8W2y9Xxh31Rq4M6wUug== + +rx@2.3.24: + version "2.3.24" + resolved "https://registry.npmjs.org/rx/-/rx-2.3.24.tgz" + integrity sha1-FPlQpCF9fjXapxu8vljv9o6ksrc= sha512-Ue4ZB7Dzbn2I9sIj8ws536nOP2S53uypyCkCz9q0vlYD5Kn6/pu4dE+wt2ZfFzd9m73hiYKnnCb1OyKqc+MRkg== -safe-buffer@^5.0.1, safe-buffer@^5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: +safe-buffer@^5.0.1, safe-buffer@~5.1.1: version "5.1.2" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== safe-json-parse@~1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/safe-json-parse/-/safe-json-parse-1.0.1.tgz#3e76723e38dfdda13c9b1d29a1e07ffee4b30b57" - integrity sha1-PnZyPjjf3aE8mx0poeB//uSzC1c= + resolved "https://registry.npmjs.org/safe-json-parse/-/safe-json-parse-1.0.1.tgz" + integrity sha1-PnZyPjjf3aE8mx0poeB//uSzC1c= sha512-o0JmTu17WGUaUOHa1l0FPGXKBfijbxK6qoHzlkihsDXxzBHvJcA7zgviKR92Xs841rX9pK16unfphLq0/KqX7A== safe-regex@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" - integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4= + resolved "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz" + integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4= sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg== dependencies: ret "~0.1.10" -"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: +safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: version "2.1.2" - resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -sax@1.2.1: +sax@>=0.6.0, sax@1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.1.tgz#7b8e656190b228e81a66aea748480d828cd2d37a" - integrity sha1-e45lYZCyKOgaZq6nSEgNgozS03o= - -sax@>=0.6.0, sax@^1.2.4: - version "1.2.4" - resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" - integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== + resolved "https://registry.npmjs.org/sax/-/sax-1.2.1.tgz" + integrity sha1-e45lYZCyKOgaZq6nSEgNgozS03o= sha512-8I2a3LovHTOpm7NV5yOyO8IHqgVsfK4+UuySrXU8YXkSRX7k6hCV9b3HrkKCr3nMpgj+0bmocaJJWpvp1oc7ZA== seek-bzip@^1.0.3, seek-bzip@^1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/seek-bzip/-/seek-bzip-1.0.5.tgz#cfe917cb3d274bcffac792758af53173eb1fabdc" - integrity sha1-z+kXyz0nS8/6x5J1ivUxc+sfq9w= + resolved "https://registry.npmjs.org/seek-bzip/-/seek-bzip-1.0.5.tgz" + integrity sha1-z+kXyz0nS8/6x5J1ivUxc+sfq9w= sha512-wA3ACYSjPgS+uQuY5q6C5TB6233mPIIDM86mlGoX9mAbfJSKkS3FGQ5hjcmaZDhccpNR3kRBmQ+J8M54lRwy+g== dependencies: commander "~2.8.1" selenium-standalone@5.5.0: version "5.5.0" - resolved "https://registry.yarnpkg.com/selenium-standalone/-/selenium-standalone-5.5.0.tgz#00584f490f93c522b49737875c084f1ef0374850" - integrity sha1-AFhPSQ+TxSK0lzeHXAhPHvA3SFA= + resolved "https://registry.npmjs.org/selenium-standalone/-/selenium-standalone-5.5.0.tgz" + integrity sha1-AFhPSQ+TxSK0lzeHXAhPHvA3SFA= sha512-F/3q9yrWJsUN411GwwEr9eL0GAl3rJaDjQPqecIqQXL7GbDDAK8Uv5Wo3F7V1IspyvSKwvvSmP9kRlsUFaZINg== dependencies: async "1.2.1" commander "2.6.0" @@ -6957,47 +6563,42 @@ selenium-standalone@5.5.0: which "1.1.1" yauzl "^2.5.0" -semver@5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.2.0.tgz#281995b80c1448209415ddbc4cf50c269cef55c5" - integrity sha1-KBmVuAwUSCCUFd28TPUMJpzvVcU= - semver@^5.3.0: version "5.6.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.6.0.tgz#7e74256fbaa49c75aa7c7a205cc22799cac80004" + resolved "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz" integrity sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg== semver@^6.3.0: version "6.3.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== semver@~2.3.1: version "2.3.2" - resolved "https://registry.yarnpkg.com/semver/-/semver-2.3.2.tgz#b9848f25d6cf36333073ec9ef8856d42f1233e52" - integrity sha1-uYSPJdbPNjMwc+ye+IVtQvEjPlI= + resolved "https://registry.npmjs.org/semver/-/semver-2.3.2.tgz" + integrity sha1-uYSPJdbPNjMwc+ye+IVtQvEjPlI= sha512-abLdIKCosKfpnmhS52NCTjO4RiLspDfsn37prjzGrp9im5DPJOgh82Os92vtwGh6XdQryKI/7SREZnV+aqiXrA== -set-blocking@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" - integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= +semver@5.2.0: + version "5.2.0" + resolved "https://registry.npmjs.org/semver/-/semver-5.2.0.tgz" + integrity sha1-KBmVuAwUSCCUFd28TPUMJpzvVcU= sha512-+vNx/U181x07/dDbDtughakdpvn2eINSlw2EL+lPQZnQUmDTesiWjzH/dp95mxld9qP9D1sD+x71YLO4WURAeg== set-getter@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/set-getter/-/set-getter-0.1.0.tgz#d769c182c9d5a51f409145f2fba82e5e86e80376" - integrity sha1-12nBgsnVpR9AkUXy+6guXoboA3Y= + resolved "https://registry.npmjs.org/set-getter/-/set-getter-0.1.0.tgz" + integrity sha1-12nBgsnVpR9AkUXy+6guXoboA3Y= sha512-lIj6AWViymAQLQyq1qehP44w4iGbSv6pYOKRQCDzqlmxctLyCrecuge0bxRPrNSnV8EeMHKR2fVTRl3LniQLNg== dependencies: to-object-path "^0.3.0" set-immediate-shim@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" - integrity sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E= + resolved "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz" + integrity sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E= sha512-Li5AOqrZWCVA2n5kryzEmqai6bKSIvpz5oUJHPVj6+dsbD3X1ixtsY5tEnsaNpH3pFAHmG8eIHUrtEtohrg+UQ== set-value@^0.4.3: version "0.4.3" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-0.4.3.tgz#7db08f9d3d22dc7f78e53af3c3bf4666ecdfccf1" - integrity sha1-fbCPnT0i3H945Trzw79GZuzfzPE= + resolved "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz" + integrity sha1-fbCPnT0i3H945Trzw79GZuzfzPE= sha512-2Z0LRUUvYeF7gIFFep48ksPq0NR09e5oKoFXznaMGNcu+EZAfGnyL0K6xno2gCqX6dZYEZRjrcn04/gvZzcKhQ== dependencies: extend-shallow "^2.0.1" is-extendable "^0.1.1" @@ -7006,7 +6607,7 @@ set-value@^0.4.3: set-value@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.0.tgz#71ae4a88f0feefbbf52d1ea604f3fb315ebb6274" + resolved "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz" integrity sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg== dependencies: extend-shallow "^2.0.1" @@ -7016,34 +6617,29 @@ set-value@^2.0.0: sha.js@^2.3.6: version "2.4.8" - resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.8.tgz#37068c2c476b6baf402d14a49c67f597921f634f" - integrity sha1-NwaMLEdra69ALRSknGf1l5IfY08= + resolved "https://registry.npmjs.org/sha.js/-/sha.js-2.4.8.tgz" + integrity sha1-NwaMLEdra69ALRSknGf1l5IfY08= sha512-O88cSHqkNUtD50hl7MXqkAlPbw1DcRBgiLRjHk3DtpGF0I6jlNN6yxCg1fIQX/Rl2PyrNK6LNuHG3FfBi0t3hQ== dependencies: inherits "^2.0.1" shelljs@^0.6.0: version "0.6.1" - resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.6.1.tgz#ec6211bed1920442088fe0f70b2837232ed2c8a8" - integrity sha1-7GIRvtGSBEIIj+D3Cyg3Iy7SyKg= - -signal-exit@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" - integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= + resolved "https://registry.npmjs.org/shelljs/-/shelljs-0.6.1.tgz" + integrity sha1-7GIRvtGSBEIIj+D3Cyg3Iy7SyKg= sha512-B1vvzXQlJ77SURr3SIUQ/afh+LwecDKAVKE1wqkBlr2PCHoZDaF6MFD+YX1u9ddQjR4z2CKx1tdqvS2Xfs5h1A== slash@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" - integrity sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU= + resolved "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz" + integrity sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU= sha512-3TYDR7xWt4dIqV2JauJr+EJeW356RXijHeUlO+8djJ+uBXPn8/2dpzBc8yQhh583sVvc9CvFAeQVgijsH+PNNg== slice-ansi@0.0.4: version "0.0.4" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35" - integrity sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU= + resolved "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz" + integrity sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU= sha512-up04hB2hR92PgjpyU3y/eg91yIBILyjVY26NvvciY3EVVPjybkMszMpXQ9QAkcS3I5rtJBDLoTxxg+qvW8c7rw== snapdragon-node@^2.0.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" + resolved "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz" integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== dependencies: define-property "^1.0.0" @@ -7052,14 +6648,14 @@ snapdragon-node@^2.0.1: snapdragon-util@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" + resolved "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz" integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== dependencies: kind-of "^3.2.0" snapdragon@^0.8.1: version "0.8.2" - resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" + resolved "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz" integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== dependencies: base "^0.11.1" @@ -7073,22 +6669,22 @@ snapdragon@^0.8.1: sntp@0.2.x: version "0.2.4" - resolved "https://registry.yarnpkg.com/sntp/-/sntp-0.2.4.tgz#fb885f18b0f3aad189f824862536bceeec750900" - integrity sha1-+4hfGLDzqtGJ+CSGJTa87ux1CQA= + resolved "https://registry.npmjs.org/sntp/-/sntp-0.2.4.tgz" + integrity sha1-+4hfGLDzqtGJ+CSGJTa87ux1CQA= sha512-bDLrKa/ywz65gCl+LmOiIhteP1bhEsAAzhfMedPoiHP3dyYnAevlaJshdqb9Yu0sRifyP/fRqSt8t+5qGIWlGQ== dependencies: hoek "0.9.x" sntp@1.x.x: version "1.0.9" - resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198" - integrity sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg= + resolved "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz" + integrity sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg= sha512-7bgVOAnPj3XjrKY577S+puCKGCRlUrcrEdsMeRXlg9Ghf5df/xNi6sONUa43WrHUd3TjJBF7O04jYoiY0FVa0A== dependencies: hoek "2.x.x" sort-array@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/sort-array/-/sort-array-2.0.0.tgz#38a9c6da27fd7d147b42e60554f281187b4df472" - integrity sha1-OKnG2if9fRR7QuYFVPKBGHtN9HI= + resolved "https://registry.npmjs.org/sort-array/-/sort-array-2.0.0.tgz" + integrity sha1-OKnG2if9fRR7QuYFVPKBGHtN9HI= sha512-nZI3lq+nPRImxYqQY5iwpOPVLdDEMr2k6rCOAz5hRcpyYFsrR+2m5Kw0tZaTt452nx/9wZrKaMEMrX03I7ChqQ== dependencies: array-back "^1.0.4" object-get "^2.1.0" @@ -7096,21 +6692,21 @@ sort-array@^2.0.0: sort-keys-length@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/sort-keys-length/-/sort-keys-length-1.0.1.tgz#9cb6f4f4e9e48155a6aa0671edd336ff1479a188" - integrity sha1-nLb09OnkgVWmqgZx7dM2/xR5oYg= + resolved "https://registry.npmjs.org/sort-keys-length/-/sort-keys-length-1.0.1.tgz" + integrity sha1-nLb09OnkgVWmqgZx7dM2/xR5oYg= sha512-GRbEOUqCxemTAk/b32F2xa8wDTs+Z1QHOkbhJDQTvv/6G3ZkbJ+frYWsTcc7cBB3Fu4wy4XlLCuNtJuMn7Gsvw== dependencies: sort-keys "^1.0.0" sort-keys@^1.0.0: version "1.1.2" - resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad" - integrity sha1-RBttTTRnmPG05J6JIK37oOVD+a0= + resolved "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz" + integrity sha1-RBttTTRnmPG05J6JIK37oOVD+a0= sha512-vzn8aSqKgytVik0iwdBEi+zevbTYZogewTUM6dtpmGwEcdzbub/TX4bCzRhebDCRC3QzXgJsLRKB2V/Oof7HXg== dependencies: is-plain-obj "^1.0.0" source-map-resolve@^0.5.0: version "0.5.2" - resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.2.tgz#72e2cc34095543e43b2c62b2c4c10d4a9054f259" + resolved "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz" integrity sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA== dependencies: atob "^2.1.1" @@ -7119,60 +6715,53 @@ source-map-resolve@^0.5.0: source-map-url "^0.4.0" urix "^0.1.0" -source-map-support@^0.4.0: - version "0.4.14" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.14.tgz#9d4463772598b86271b4f523f6c1f4e02a7d6aef" - integrity sha1-nURjdyWYuGJxtPUj9sH04Cp9au8= - dependencies: - source-map "^0.5.6" - -source-map-support@^0.4.15: +source-map-support@^0.4.0, source-map-support@^0.4.15: version "0.4.16" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.16.tgz#16fecf98212467d017d586a2af68d628b9421cd8" + resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.16.tgz" integrity sha512-A6vlydY7H/ljr4L2UOhDSajQdZQ6dMD7cLH0pzwcmwLyc9u8PNI4WGtnfDDzX7uzGL6c/T+ORL97Zlh+S4iOrg== dependencies: source-map "^0.5.6" source-map-url@^0.4.0: version "0.4.0" - resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" - integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= + resolved "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz" + integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= sha512-liJwHPI9x9d9w5WSIjM58MqGmmb7XzNqwdUA3kSBQ4lmDngexlKwawGzK3J1mKXi6+sysoMDlpVyZh9sv5vRfw== source-map@^0.5.0, source-map@^0.5.6: version "0.5.6" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" - integrity sha1-dc449SvwczxafwwRjYEzSiu19BI= + resolved "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz" + integrity sha1-dc449SvwczxafwwRjYEzSiu19BI= sha512-MjZkVp0NHr5+TPihLcadqnlVoGIoWo4IBHptutGh9wI3ttUYvCG26HkSuDi+K6lsZ25syXJXcctwgyVCt//xqA== source-map@^0.6.1: version "0.6.1" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== sparkles@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/sparkles/-/sparkles-1.0.0.tgz#1acbbfb592436d10bbe8f785b7cc6f82815012c3" - integrity sha1-Gsu/tZJDbRC76PeFt8xvgoFQEsM= + resolved "https://registry.npmjs.org/sparkles/-/sparkles-1.0.0.tgz" + integrity sha1-Gsu/tZJDbRC76PeFt8xvgoFQEsM= sha512-dZz1U41LhWOCCky1mHNT5aLvNdq7kLYPLnOWCFx3hyIwY0PMG8lHf5o0PDdserbz8H33Aobo6LcLtOwOslREQA== spawn-command@^0.0.2-1: version "0.0.2" - resolved "https://registry.yarnpkg.com/spawn-command/-/spawn-command-0.0.2.tgz#9544e1a43ca045f8531aac1a48cb29bdae62338e" - integrity sha1-lUThpDygRfhTGqwaSMspva5iM44= + resolved "https://registry.npmjs.org/spawn-command/-/spawn-command-0.0.2.tgz" + integrity sha1-lUThpDygRfhTGqwaSMspva5iM44= sha512-zC8zGoGkmc8J9ndvml8Xksr1Amk9qBujgbF0JAIWO7kXr43w0h/0GJNM/Vustixu+YE8N/MTrQ7N31FvHUACxQ== split-string@^3.0.1, split-string@^3.0.2: version "3.1.0" - resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" + resolved "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz" integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== dependencies: extend-shallow "^3.0.0" sprintf-js@~1.0.2: version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" - integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= + resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz" + integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== sshpk@^1.7.0: version "1.15.2" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.15.2.tgz#c946d6bd9b1a39d0e8635763f5242d6ed6dcb629" + resolved "https://registry.npmjs.org/sshpk/-/sshpk-1.15.2.tgz" integrity sha512-Ra/OXQtuh0/enyl4ETZAfTaeksa6BXks5ZcjpSUNrjBr0DvrJKX+1fsKDPpT9TBXgHAFsa4510aNVgI8g/+SzA== dependencies: asn1 "~0.2.3" @@ -7187,139 +6776,117 @@ sshpk@^1.7.0: stat-mode@^0.2.0: version "0.2.2" - resolved "https://registry.yarnpkg.com/stat-mode/-/stat-mode-0.2.2.tgz#e6c80b623123d7d80cf132ce538f346289072502" - integrity sha1-5sgLYjEj19gM8TLOU480YokHJQI= + resolved "https://registry.npmjs.org/stat-mode/-/stat-mode-0.2.2.tgz" + integrity sha1-5sgLYjEj19gM8TLOU480YokHJQI= sha512-o+7DC0OM5Jt3+gratXXqfXf62V/CBoqQbT7Kp7jCxTYW2PLOB2/ZSGIfm9T5/QZe1Vw1MCbu6DoB6JnhVtxcJw== static-extend@^0.1.1: version "0.1.2" - resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" - integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= + resolved "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz" + integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g== dependencies: define-property "^0.2.5" object-copy "^0.1.0" stream-combiner2@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/stream-combiner2/-/stream-combiner2-1.1.1.tgz#fb4d8a1420ea362764e21ad4780397bebcb41cbe" - integrity sha1-+02KFCDqNidk4hrUeAOXvry0HL4= + resolved "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz" + integrity sha1-+02KFCDqNidk4hrUeAOXvry0HL4= sha512-3PnJbYgS56AeWgtKF5jtJRT6uFJe56Z0Hc5Ngg/6sI6rIt8iiMBTa9cvdyFfpMQjaVHr8dusbNeFGIIonxOvKw== dependencies: duplexer2 "~0.1.0" readable-stream "^2.0.2" stream-connect@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/stream-connect/-/stream-connect-1.0.2.tgz#18bc81f2edb35b8b5d9a8009200a985314428a97" - integrity sha1-GLyB8u2zW4tdmoAJIAqYUxRCipc= + resolved "https://registry.npmjs.org/stream-connect/-/stream-connect-1.0.2.tgz" + integrity sha1-GLyB8u2zW4tdmoAJIAqYUxRCipc= sha512-68Kl+79cE0RGKemKkhxTSg8+6AGrqBt+cbZAXevg2iJ6Y3zX4JhA/sZeGzLpxW9cXhmqAcE7KnJCisUmIUfnFQ== dependencies: array-back "^1.0.2" stream-shift@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952" - integrity sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI= + resolved "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz" + integrity sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI= sha512-Afuc4BKirbx0fwm9bKOehZPG01DJkm/4qbklw4lo9nMPqd2x0kZTLcgwQUXdGiPPY489l3w8cQ5xEEAGbg8ACQ== stream-via@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/stream-via/-/stream-via-1.0.4.tgz#8dccbb0ac909328eb8bc8e2a4bd3934afdaf606c" + resolved "https://registry.npmjs.org/stream-via/-/stream-via-1.0.4.tgz" integrity sha512-DBp0lSvX5G9KGRDTkR/R+a29H+Wk2xItOF+MpZLLNDWbEV9tGPnqLPxHEYjmiz8xGtJHRIqmI+hCjmNzqoA4nQ== +string_decoder@~0.10.x, string_decoder@0.10: + version "0.10.31" + resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" + integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ= sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ== + string-range@~1.2, string-range@~1.2.1: version "1.2.2" - resolved "https://registry.yarnpkg.com/string-range/-/string-range-1.2.2.tgz#a893ed347e72299bc83befbbf2a692a8d239d5dd" - integrity sha1-qJPtNH5yKZvIO++78qaSqNI51d0= + resolved "https://registry.npmjs.org/string-range/-/string-range-1.2.2.tgz" + integrity sha1-qJPtNH5yKZvIO++78qaSqNI51d0= sha512-tYft6IFi8SjplJpxCUxyqisD3b+R2CSkomrtJYCkvuf1KuCAWgz7YXt4O0jip7efpfCemwHEzTEAO8EuOYgh3w== string-template@~0.2.1: version "0.2.1" - resolved "https://registry.yarnpkg.com/string-template/-/string-template-0.2.1.tgz#42932e598a352d01fc22ec3367d9d84eec6c9add" - integrity sha1-QpMuWYo1LQH8IuwzZ9nYTuxsmt0= + resolved "https://registry.npmjs.org/string-template/-/string-template-0.2.1.tgz" + integrity sha1-QpMuWYo1LQH8IuwzZ9nYTuxsmt0= sha512-Yptehjogou2xm4UJbxJ4CxgZx12HBfeystp0y3x7s4Dj32ltVVG1Gg8YhKjHZkHicuKpZX/ffilA8505VbUbpw== string-width@^1.0.1: version "1.0.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" - integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= + resolved "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz" + integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw== dependencies: code-point-at "^1.0.0" is-fullwidth-code-point "^1.0.0" strip-ansi "^3.0.0" -"string-width@^1.0.2 || 2": - version "2.1.1" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" - integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== - dependencies: - is-fullwidth-code-point "^2.0.0" - strip-ansi "^4.0.0" - string-width@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.0.0.tgz#635c5436cc72a6e0c387ceca278d4e2eec52687e" - integrity sha1-Y1xUNsxypuDDh87KJ41OLuxSaH4= + resolved "https://registry.npmjs.org/string-width/-/string-width-2.0.0.tgz" + integrity sha1-Y1xUNsxypuDDh87KJ41OLuxSaH4= sha512-w+YQpeOppRYnIHRftgHpjGYUj9m0XKeam1C4ahbh+vErWcY8JJCcrHi/YhUFhHoVeWADkhplCWYdYwX5Nmhiyw== dependencies: is-fullwidth-code-point "^2.0.0" strip-ansi "^3.0.0" -string_decoder@0.10, string_decoder@~0.10.x: - version "0.10.31" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" - integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ= - -string_decoder@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" - integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== - dependencies: - safe-buffer "~5.1.0" - stringstream@~0.0.4: version "0.0.6" - resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.6.tgz#7880225b0d4ad10e30927d167a1d6f2fd3b33a72" + resolved "https://registry.npmjs.org/stringstream/-/stringstream-0.0.6.tgz" integrity sha512-87GEBAkegbBcweToUrdzf3eLhWNg06FJTebl4BVJz/JgWy8CvEr9dRtX5qWphiynMSQlxxi+QqN0z5T32SLlhA== strip-ansi@^0.3.0: version "0.3.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-0.3.0.tgz#25f48ea22ca79187f3174a4db8759347bb126220" - integrity sha1-JfSOoiynkYfzF0pNuHWTR7sSYiA= + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.3.0.tgz" + integrity sha1-JfSOoiynkYfzF0pNuHWTR7sSYiA= sha512-DerhZL7j6i6/nEnVG0qViKXI0OKouvvpsAiaj7c+LfqZZZxdwZtv8+UiA/w4VUJpT8UzX0pR1dcHOii1GbmruQ== dependencies: ansi-regex "^0.2.1" -strip-ansi@^3.0.0, strip-ansi@^3.0.1: +strip-ansi@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz" + integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg== dependencies: ansi-regex "^2.0.0" -strip-ansi@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" - integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= - dependencies: - ansi-regex "^3.0.0" - strip-bom-stream@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-bom-stream/-/strip-bom-stream-1.0.0.tgz#e7144398577d51a6bed0fa1994fa05f43fd988ee" - integrity sha1-5xRDmFd9Uaa+0PoZlPoF9D/ZiO4= + resolved "https://registry.npmjs.org/strip-bom-stream/-/strip-bom-stream-1.0.0.tgz" + integrity sha1-5xRDmFd9Uaa+0PoZlPoF9D/ZiO4= sha512-7jfJB9YpI2Z0aH3wu10ZqitvYJaE0s5IzFuWE+0pbb4Q/armTloEUShymkDO47YSLnjAW52mlXT//hs9wXNNJQ== dependencies: first-chunk-stream "^1.0.0" strip-bom "^2.0.0" strip-bom@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" - integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4= + resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz" + integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4= sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g== dependencies: is-utf8 "^0.2.0" strip-bom@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" - integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= + resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz" + integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA== strip-dirs@^1.0.0: version "1.1.1" - resolved "https://registry.yarnpkg.com/strip-dirs/-/strip-dirs-1.1.1.tgz#960bbd1287844f3975a4558aa103a8255e2456a0" - integrity sha1-lgu9EoeETzl1pFWKoQOoJV4kVqA= + resolved "https://registry.npmjs.org/strip-dirs/-/strip-dirs-1.1.1.tgz" + integrity sha1-lgu9EoeETzl1pFWKoQOoJV4kVqA= sha512-+0QvOUTIs3xMridKraQAUSIp/kq7FRt/QjevB40+U6qJfeuPpTDQENFVfAbfZp59GpJkxY+yMdjR5cgKZyR2vg== dependencies: chalk "^1.0.0" get-stdin "^4.0.1" @@ -7330,90 +6897,79 @@ strip-dirs@^1.0.0: strip-dirs@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-dirs/-/strip-dirs-2.0.0.tgz#610cdb2928200da0004f41dcb90fc95cd919a0b6" - integrity sha1-YQzbKSggDaAAT0HcuQ/JXNkZoLY= + resolved "https://registry.npmjs.org/strip-dirs/-/strip-dirs-2.0.0.tgz" + integrity sha1-YQzbKSggDaAAT0HcuQ/JXNkZoLY= sha512-0EQ9UChIr69BUb/Nc2+aAjClgGefBaUhBypv60E3L56FajbCxl+ap7EFRBbCKHZP+0mxDj1kjUCSSRjcw11pIA== dependencies: is-natural-number "^4.0.1" strip-eof@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" - integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= + resolved "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz" + integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q== strip-json-comments@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.0.1.tgz#85713975a91fb87bf1b305cca77395e40d2a64a7" + resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz" integrity sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw== strip-json-comments@~1.0.1: version "1.0.4" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-1.0.4.tgz#1e15fbcac97d3ee99bf2d73b4c656b082bbafb91" - integrity sha1-HhX7ysl9Pumb8tc7TGVrCCu6+5E= + resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.4.tgz" + integrity sha1-HhX7ysl9Pumb8tc7TGVrCCu6+5E= sha512-AOPG8EBc5wAikaG1/7uFCNFJwnKOuQwFTpYBdTW6OvWHeZBQBrAA/amefHGrEiOnCPcLFZK6FUPtWVKpQVIRgg== strip-json-comments@~2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" - integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= + resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz" + integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== strip-outer@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-outer/-/strip-outer-1.0.0.tgz#aac0ba60d2e90c5d4f275fd8869fd9a2d310ffb8" - integrity sha1-qsC6YNLpDF1PJ1/Yhp/ZotMQ/7g= + resolved "https://registry.npmjs.org/strip-outer/-/strip-outer-1.0.0.tgz" + integrity sha1-qsC6YNLpDF1PJ1/Yhp/ZotMQ/7g= sha512-bDoHnZ1iHXSl9FpxbzZLD3UxyH/yXd8r8nSWzAmpCVeWrIIbh6Cccs9VyjeO5bgo/uKS9VoURwkJISKDNiDngg== dependencies: escape-string-regexp "^1.0.2" sum-up@^1.0.1: version "1.0.3" - resolved "https://registry.yarnpkg.com/sum-up/-/sum-up-1.0.3.tgz#1c661f667057f63bcb7875aa1438bc162525156e" - integrity sha1-HGYfZnBX9jvLeHWqFDi8FiUlFW4= + resolved "https://registry.npmjs.org/sum-up/-/sum-up-1.0.3.tgz" + integrity sha1-HGYfZnBX9jvLeHWqFDi8FiUlFW4= sha512-zw5P8gnhiqokJUWRdR6F4kIIIke0+ubQSGyYUY506GCbJWtV7F6Xuy0j6S125eSX2oF+a8KdivsZ8PlVEH0Mcw== dependencies: chalk "^1.0.0" -supports-color@3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.1.2.tgz#72a262894d9d408b956ca05ff37b2ed8a6e2a2d5" - integrity sha1-cqJiiU2dQIuVbKBf83su2KbiotU= - dependencies: - has-flag "^1.0.0" - supports-color@^0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-0.2.0.tgz#d92de2694eb3f67323973d7ae3d8b55b4c22190a" - integrity sha1-2S3iaU6z9nMjlz1649i1W0wiGQo= + resolved "https://registry.npmjs.org/supports-color/-/supports-color-0.2.0.tgz" + integrity sha1-2S3iaU6z9nMjlz1649i1W0wiGQo= sha512-tdCZ28MnM7k7cJDJc7Eq80A9CsRFAAOZUy41npOZCs++qSjfIy7o5Rh46CBk+Dk5FbKJ33X3Tqg4YrV07N5RaA== supports-color@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" - integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= + resolved "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz" + integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g== supports-color@^3.2.3: version "3.2.3" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6" - integrity sha1-ZawFBLOVQXHYpklGsq48u4pfVPY= + resolved "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz" + integrity sha1-ZawFBLOVQXHYpklGsq48u4pfVPY= sha512-Jds2VIYDrlp5ui7t8abHN2bjAu4LV/q4N2KivFPpGH0lrka0BMq/33AmECUXlKPcHigkNaqfXRENFju+rlcy+A== dependencies: has-flag "^1.0.0" supports-color@^5.3.0: version "5.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== dependencies: has-flag "^3.0.0" -table-layout@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/table-layout/-/table-layout-0.4.0.tgz#c70ff0455d9add63b91f7c15a77926295c0e0e7d" - integrity sha1-xw/wRV2a3WO5H3wVp3kmKVwODn0= +supports-color@3.1.2: + version "3.1.2" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-3.1.2.tgz" + integrity sha1-cqJiiU2dQIuVbKBf83su2KbiotU= sha512-F8dvPrZJtNzvDRX26eNXT4a7AecAvTGljmmnI39xEgSpbHKhQ7N0dO/NTxUExd0wuLHp4zbwYY7lvHq0aKpwrA== dependencies: - array-back "^1.0.4" - deep-extend "~0.4.1" - lodash.padend "^4.6.1" - typical "^2.6.0" - wordwrapjs "^2.0.0" + has-flag "^1.0.0" -table-layout@^0.4.2: +table-layout@^0.4.0, table-layout@^0.4.2: version "0.4.5" - resolved "https://registry.yarnpkg.com/table-layout/-/table-layout-0.4.5.tgz#d906de6a25fa09c0c90d1d08ecd833ecedcb7378" + resolved "https://registry.npmjs.org/table-layout/-/table-layout-0.4.5.tgz" integrity sha512-zTvf0mcggrGeTe/2jJ6ECkJHAQPIYEwDoqsiqBjI24mvRmQbInK5jq33fyypaCBxX08hMkfmdOqj6haT33EqWw== dependencies: array-back "^2.0.0" @@ -7424,8 +6980,8 @@ table-layout@^0.4.2: table@^3.7.8: version "3.8.3" - resolved "https://registry.yarnpkg.com/table/-/table-3.8.3.tgz#2bbc542f0fda9861a755d3947fefd8b3f513855f" - integrity sha1-K7xULw/amGGnVdOUf+/Ys/UThV8= + resolved "https://registry.npmjs.org/table/-/table-3.8.3.tgz" + integrity sha1-K7xULw/amGGnVdOUf+/Ys/UThV8= sha512-RZuzIOtzFbprLCE0AXhkI0Xi42ZJLZhCC+qkwuMLf/Vjz3maWpA8gz1qMdbmNoI9cOROT2Am/DxeRyXenrL11g== dependencies: ajv "^4.7.0" ajv-keywords "^1.0.0" @@ -7436,87 +6992,64 @@ table@^3.7.8: taffydb@2.6.2: version "2.6.2" - resolved "https://registry.yarnpkg.com/taffydb/-/taffydb-2.6.2.tgz#7cbcb64b5a141b6a2efc2c5d2c67b4e150b2a268" - integrity sha1-fLy2S1oUG2ou/CxdLGe04VCyomg= + resolved "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz" + integrity sha1-fLy2S1oUG2ou/CxdLGe04VCyomg= sha512-y3JaeRSplks6NYQuCOj3ZFMO3j60rTwbuKCvZxsAraGYH2epusatvZ0baZYA01WsGqJBq/Dl6vOrMUJqyMj8kA== -tar-stream@^1.1.1: +tar-stream@^1.1.1, tar-stream@^1.5.2: version "1.5.2" - resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-1.5.2.tgz#fbc6c6e83c1a19d4cb48c7d96171fc248effc7bf" - integrity sha1-+8bG6DwaGdTLSMfZYXH8JI7/x78= - dependencies: - bl "^1.0.0" - end-of-stream "^1.0.0" - readable-stream "^2.0.0" - xtend "^4.0.0" - -tar-stream@^1.5.2: - version "1.5.4" - resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-1.5.4.tgz#36549cf04ed1aee9b2a30c0143252238daf94016" - integrity sha1-NlSc8E7RrumyowwBQyUiONr5QBY= + resolved "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.2.tgz" + integrity sha1-+8bG6DwaGdTLSMfZYXH8JI7/x78= sha512-X2iZpARyDjlkj6Tz3nlI1lY4a4k+xEatPgQg7O2WiUMTXIrjVp8R86K3AdWfHp+Q3jsaLE2FLlHES+PA5zwAhA== dependencies: bl "^1.0.0" end-of-stream "^1.0.0" readable-stream "^2.0.0" xtend "^4.0.0" -tar@^4: - version "4.4.8" - resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.8.tgz#b19eec3fde2a96e64666df9fdb40c5ca1bc3747d" - integrity sha512-LzHF64s5chPQQS0IYBn9IN5h3i98c12bo4NCO7e0sGM2llXQ3p2FGC5sdENN4cTW48O915Sh+x+EXx7XW96xYQ== - dependencies: - chownr "^1.1.1" - fs-minipass "^1.2.5" - minipass "^2.3.4" - minizlib "^1.1.1" - mkdirp "^0.5.0" - safe-buffer "^5.1.2" - yallist "^3.0.2" - temp-dir@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-1.0.0.tgz#0a7c0ea26d3a39afa7e0ebea9c1fc0bc4daa011d" - integrity sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0= + resolved "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz" + integrity sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0= sha512-xZFXEGbG7SNC3itwBzI3RYjq/cEhBkx2hJuKGIUOcEULmkQExXiHat2z/qkISYsuR+IKumhEfKKbV5qXmhICFQ== temp-path@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/temp-path/-/temp-path-1.0.0.tgz#24b1543973ab442896d9ad367dd9cbdbfafe918b" - integrity sha1-JLFUOXOrRCiW2a02fdnL2/r+kYs= + resolved "https://registry.npmjs.org/temp-path/-/temp-path-1.0.0.tgz" + integrity sha1-JLFUOXOrRCiW2a02fdnL2/r+kYs= sha512-TvmyH7kC6ZVTYkqCODjJIbgvu0FKiwQpZ4D1aknE7xpcDf/qEOB8KZEK5ef2pfbVoiBhNWs3yx4y+ESMtNYmlg== tempfile@^1.0.0: version "1.1.1" - resolved "https://registry.yarnpkg.com/tempfile/-/tempfile-1.1.1.tgz#5bcc4eaecc4ab2c707d8bc11d99ccc9a2cb287f2" - integrity sha1-W8xOrsxKsscH2LwR2ZzMmiyyh/I= + resolved "https://registry.npmjs.org/tempfile/-/tempfile-1.1.1.tgz" + integrity sha1-W8xOrsxKsscH2LwR2ZzMmiyyh/I= sha512-NjT12fW6pSEKz1eVcADgaKfeM+XZ4+zSaqVz46XH7+CiEwcelnwtGWRRjF1p+xyW2PVgKKKS2UUw1LzRelntxg== dependencies: os-tmpdir "^1.0.0" uuid "^2.0.1" tempfile@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/tempfile/-/tempfile-2.0.0.tgz#6b0446856a9b1114d1856ffcbe509cccb0977265" - integrity sha1-awRGhWqbERTRhW/8vlCczLCXcmU= + resolved "https://registry.npmjs.org/tempfile/-/tempfile-2.0.0.tgz" + integrity sha1-awRGhWqbERTRhW/8vlCczLCXcmU= sha512-ZOn6nJUgvgC09+doCEF3oB+r3ag7kUvlsXEGX069QRD60p+P3uP7XG9N2/at+EyIRGSN//ZY3LyEotA1YpmjuA== dependencies: temp-dir "^1.0.0" uuid "^3.0.1" test-value@^1.0.1: version "1.1.0" - resolved "https://registry.yarnpkg.com/test-value/-/test-value-1.1.0.tgz#a09136f72ec043d27c893707c2b159bfad7de93f" - integrity sha1-oJE29y7AQ9J8iTcHwrFZv6196T8= + resolved "https://registry.npmjs.org/test-value/-/test-value-1.1.0.tgz" + integrity sha1-oJE29y7AQ9J8iTcHwrFZv6196T8= sha512-wrsbRo7qP+2Je8x8DsK8ovCGyxe3sYfQwOraIY/09A2gFXU9DYKiTF14W4ki/01AEh56kMzAmlj9CaHGDDUBJA== dependencies: array-back "^1.0.2" typical "^2.4.2" test-value@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/test-value/-/test-value-2.1.0.tgz#11da6ff670f3471a73b625ca4f3fdcf7bb748291" - integrity sha1-Edpv9nDzRxpztiXKTz/c97t0gpE= + resolved "https://registry.npmjs.org/test-value/-/test-value-2.1.0.tgz" + integrity sha1-Edpv9nDzRxpztiXKTz/c97t0gpE= sha512-+1epbAxtKeXttkGFMTX9H42oqzOTufR1ceCF+GYA5aOmvaPq9wd4PUS8329fn2RRLGNeUkgRLnVpycjx8DsO2w== dependencies: array-back "^1.0.3" typical "^2.6.0" test-value@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/test-value/-/test-value-3.0.0.tgz#9168c062fab11a86b8d444dd968bb4b73851ce92" + resolved "https://registry.npmjs.org/test-value/-/test-value-3.0.0.tgz" integrity sha512-sVACdAWcZkSU9x7AOmJo5TqE+GyNJknHaHsMrR6ZnhjVlVN9Yx6FjHrsKZ3BjIpPCT68zYesPWkakrNupwfOTQ== dependencies: array-back "^2.0.0" @@ -7524,56 +7057,64 @@ test-value@^3.0.0: text-table@~0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" - integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= + resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" + integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== + +through@^2.3.6: + version "2.3.8" + resolved "https://registry.npmjs.org/through/-/through-2.3.8.tgz" + integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg== through2-filter@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/through2-filter/-/through2-filter-2.0.0.tgz#60bc55a0dacb76085db1f9dae99ab43f83d622ec" - integrity sha1-YLxVoNrLdghdsfna6Zq0P4PWIuw= + resolved "https://registry.npmjs.org/through2-filter/-/through2-filter-2.0.0.tgz" + integrity sha1-YLxVoNrLdghdsfna6Zq0P4PWIuw= sha512-miwWajb1B80NvIVKXFPN/o7+vJc4jYUvnZCwvhicRAoTxdD9wbcjri70j+BenCrN/JXEPKDjhpw4iY7yiNsCGg== dependencies: through2 "~2.0.0" xtend "~4.0.0" through2@^0.6.0, through2@^0.6.1: version "0.6.5" - resolved "https://registry.yarnpkg.com/through2/-/through2-0.6.5.tgz#41ab9c67b29d57209071410e1d7a7a968cd3ad48" - integrity sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg= + resolved "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz" + integrity sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg= sha512-RkK/CCESdTKQZHdmKICijdKKsCRVHs5KsLZ6pACAmF/1GPUQhonHSXWNERctxEp7RmvjdNbZTL5z9V7nSCXKcg== dependencies: readable-stream ">=1.0.33-1 <1.1.0-0" xtend ">=4.0.0 <4.1.0-0" -through2@^2.0.0, through2@~2.0.0: +through2@^2.0.0: version "2.0.3" - resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" - integrity sha1-AARWmzfHx0ujnEPzzteNGtlBQL4= + resolved "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz" + integrity sha1-AARWmzfHx0ujnEPzzteNGtlBQL4= sha512-tmNYYHFqXmaKSSlOU4ZbQ82cxmFQa5LRWKFtWCNkGIiZ3/VHmOffCeWfBRZZRyXAhNP9itVMR+cuvomBOPlm8g== dependencies: readable-stream "^2.1.5" xtend "~4.0.1" -through@^2.3.6: - version "2.3.8" - resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" - integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= +through2@~2.0.0: + version "2.0.3" + resolved "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz" + integrity sha1-AARWmzfHx0ujnEPzzteNGtlBQL4= sha512-tmNYYHFqXmaKSSlOU4ZbQ82cxmFQa5LRWKFtWCNkGIiZ3/VHmOffCeWfBRZZRyXAhNP9itVMR+cuvomBOPlm8g== + dependencies: + readable-stream "^2.1.5" + xtend "~4.0.1" time-stamp@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-1.0.1.tgz#9f4bd23559c9365966f3302dbba2b07c6b99b151" - integrity sha1-n0vSNVnJNllm8zAtu6KwfGuZsVE= + resolved "https://registry.npmjs.org/time-stamp/-/time-stamp-1.0.1.tgz" + integrity sha1-n0vSNVnJNllm8zAtu6KwfGuZsVE= sha512-12S1dAKym6yaqnsE9dzzHaAYgFMk5VYPM+h9kDUcYGiUD1iJwNmE4Fxv9/Ai3z1eXgbMDHZXqyjJkyj38qyoOQ== timed-out@^3.0.0: version "3.1.3" - resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-3.1.3.tgz#95860bfcc5c76c277f8f8326fd0f5b2e20eba217" - integrity sha1-lYYL/MXHbCd/j4Mm/Q9bLiDrohc= + resolved "https://registry.npmjs.org/timed-out/-/timed-out-3.1.3.tgz" + integrity sha1-lYYL/MXHbCd/j4Mm/Q9bLiDrohc= sha512-3RB4qgvPkxF/FGPnrzaWLhW1rxNK2sdH0mFjbhxkfTR6QXvcM3EtYm9L44UrhODZrZ+yhDXeMncLqi8QXn2MJg== timed-out@^4.0.0: version "4.0.1" - resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f" - integrity sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8= + resolved "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz" + integrity sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8= sha512-G7r3AhovYtr5YKOWQkta8RKAPb+J9IsO4uVmzjl8AZwfhs8UcUwTiD6gcJYSgOtzyjvQKrKYn41syHbUWMkafA== tiny-lr@1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/tiny-lr/-/tiny-lr-1.0.5.tgz#21f40bf84ebd1f853056680375eef1670c334112" + resolved "https://registry.npmjs.org/tiny-lr/-/tiny-lr-1.0.5.tgz" integrity sha512-YrxUSiMgOVh3PnAqtdAUQuUVEVRnqcRCxJ3BHrl/aaWV2fplKKB60oClM0GH2Gio2hcXvkxMUxsC/vXZrQePlg== dependencies: body "^5.1.0" @@ -7585,51 +7126,51 @@ tiny-lr@1.0.5: tmp@0.0.29: version "0.0.29" - resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.29.tgz#f25125ff0dd9da3ccb0c2dd371ee1288bb9128c0" - integrity sha1-8lEl/w3Z2jzLDC3Tce4SiLuRKMA= + resolved "https://registry.npmjs.org/tmp/-/tmp-0.0.29.tgz" + integrity sha1-8lEl/w3Z2jzLDC3Tce4SiLuRKMA= sha512-89PTqMWGDva+GqClOqBV9s3SMh7MA3Mq0pJUdAoHuF65YoE7O0LermaZkVfT5/Ngfo18H4eYiyG7zKOtnEbxsw== dependencies: os-tmpdir "~1.0.1" to-absolute-glob@^0.1.1: version "0.1.1" - resolved "https://registry.yarnpkg.com/to-absolute-glob/-/to-absolute-glob-0.1.1.tgz#1cdfa472a9ef50c239ee66999b662ca0eb39937f" - integrity sha1-HN+kcqnvUMI57maZm2YsoOs5k38= + resolved "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-0.1.1.tgz" + integrity sha1-HN+kcqnvUMI57maZm2YsoOs5k38= sha512-Vvl5x6zNf9iVG1QTWeknmWrKzZxaeKfIDRibrZCR3b2V/2NlFJuD2HV7P7AVjaKLZNqLPHqyr0jGrW0fTcxCPQ== dependencies: extend-shallow "^2.0.1" to-fast-properties@^1.0.1: version "1.0.2" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.2.tgz#f3f5c0c3ba7299a7ef99427e44633257ade43320" - integrity sha1-8/XAw7pymafvmUJ+RGMyV63kMyA= + resolved "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.2.tgz" + integrity sha1-8/XAw7pymafvmUJ+RGMyV63kMyA= sha512-pe0e0JdQLxVTcG0KZrafFA53KqR1J7ufHIg9sYtVY303jTkRF/w3PWwJX2dzdW5hlWFQueIb35Z5LUqR7nr3Vw== to-fast-properties@^1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" - integrity sha1-uDVx+k2MJbguIxsG46MFXeTKGkc= + resolved "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz" + integrity sha1-uDVx+k2MJbguIxsG46MFXeTKGkc= sha512-lxrWP8ejsq+7E3nNjwYmUBMAgjMTZoTI+sdBOpvNyijeDLa29LUn9QaoXAHv4+Z578hbmHHJKZknzxVtvo77og== to-fast-properties@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" - integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= + resolved "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz" + integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== to-object-path@^0.3.0: version "0.3.0" - resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" - integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= + resolved "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz" + integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg== dependencies: kind-of "^3.0.2" to-regex-range@^2.1.0: version "2.1.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" - integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= + resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz" + integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg== dependencies: is-number "^3.0.0" repeat-string "^1.6.1" to-regex@^3.0.1, to-regex@^3.0.2: version "3.0.2" - resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" + resolved "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz" integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== dependencies: define-property "^2.0.2" @@ -7639,109 +7180,102 @@ to-regex@^3.0.1, to-regex@^3.0.2: topo@2.x.x: version "2.0.2" - resolved "https://registry.yarnpkg.com/topo/-/topo-2.0.2.tgz#cd5615752539057c0dc0491a621c3bc6fbe1d182" - integrity sha1-zVYVdSU5BXwNwEkaYhw7xvvh0YI= + resolved "https://registry.npmjs.org/topo/-/topo-2.0.2.tgz" + integrity sha1-zVYVdSU5BXwNwEkaYhw7xvvh0YI= sha512-QMfJ9TC5lKcmLZImOZ/BTSWJeVbay7XK2nlzvFALW3BA5OkvBnbs0poku4EsRpDMndDVnM58EU/8D3ZcoVehWg== dependencies: hoek "4.x.x" -tough-cookie@>=0.12.0: +tough-cookie@>=0.12.0, tough-cookie@~2.3.0: version "2.3.2" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.2.tgz#f081f76e4c85720e6c37a5faced737150d84072a" - integrity sha1-8IH3bkyFcg5sN6X6ztc3FQ2EByo= - dependencies: - punycode "^1.4.1" - -tough-cookie@~2.3.0: - version "2.3.4" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.4.tgz#ec60cee38ac675063ffc97a5c18970578ee83655" - integrity sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA== + resolved "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.2.tgz" + integrity sha1-8IH3bkyFcg5sN6X6ztc3FQ2EByo= sha512-42UXjmzk88F7URyg9wDV/dlQ7hXtl/SDV6xIMVdDq82cnDGQDyg8mI8xGBPOwpEfbhvrja6cJ8H1wr0xxykBKA== dependencies: punycode "^1.4.1" tree-kill@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/tree-kill/-/tree-kill-1.1.0.tgz#c963dcf03722892ec59cba569e940b71954d1729" - integrity sha1-yWPc8DciiS7FnLpWnpQLcZVNFyk= + resolved "https://registry.npmjs.org/tree-kill/-/tree-kill-1.1.0.tgz" + integrity sha1-yWPc8DciiS7FnLpWnpQLcZVNFyk= sha512-GMrxLv+KCy2p8UOWVfMALOz0xbv0Ii8HUybWomnWZlpm4gHnOMmg0jrPgkZ0LA6NVzLlHaLAVlajQtK+mN2veA== trim-repeated@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/trim-repeated/-/trim-repeated-1.0.0.tgz#e3646a2ea4e891312bf7eace6cfb05380bc01c21" - integrity sha1-42RqLqTokTEr9+rObPsFOAvAHCE= + resolved "https://registry.npmjs.org/trim-repeated/-/trim-repeated-1.0.0.tgz" + integrity sha1-42RqLqTokTEr9+rObPsFOAvAHCE= sha512-pkonvlKk8/ZuR0D5tLW8ljt5I8kmxp2XKymhepUeOdCEfKpZaktSArkLHZt76OB1ZvO9bssUsDty4SWhLvZpLg== dependencies: escape-string-regexp "^1.0.2" trim-right@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" - integrity sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= + resolved "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz" + integrity sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= sha512-WZGXGstmCWgeevgTL54hrCuw1dyMQIzWy7ZfqRJfSmJZBwklI15egmQytFP6bPidmw3M8d5yEowl1niq4vmqZw== tryit@^1.0.1: version "1.0.3" - resolved "https://registry.yarnpkg.com/tryit/-/tryit-1.0.3.tgz#393be730a9446fd1ead6da59a014308f36c289cb" - integrity sha1-OTvnMKlEb9Hq1tpZoBQwjzbCics= + resolved "https://registry.npmjs.org/tryit/-/tryit-1.0.3.tgz" + integrity sha1-OTvnMKlEb9Hq1tpZoBQwjzbCics= sha512-6C5h3CE+0qjGp+YKYTs74xR0k/Nw/ePtl/Lp6CCf44hqBQ66qnH1sDFR5mV/Gc48EsrHLB53lCFSffQCkka3kg== -tunnel-agent@^0.4.0, tunnel-agent@~0.4.0: +tunnel-agent@^0.4.0: version "0.4.3" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb" - integrity sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us= + resolved "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz" + integrity sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us= sha512-e0IoVDWx8SDHc/hwFTqJDQ7CCDTEeGhmcT9jkWJjoGQSpgBz20nAMr80E3Tpk7PatJ1b37DQDgJR3CNSzcMOZQ== tunnel-agent@^0.6.0: version "0.6.0" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= + resolved "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz" + integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w== dependencies: safe-buffer "^5.0.1" +tunnel-agent@~0.4.0: + version "0.4.3" + resolved "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz" + integrity sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us= sha512-e0IoVDWx8SDHc/hwFTqJDQ7CCDTEeGhmcT9jkWJjoGQSpgBz20nAMr80E3Tpk7PatJ1b37DQDgJR3CNSzcMOZQ== + tweetnacl@^0.14.3, tweetnacl@~0.14.0: version "0.14.5" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" - integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= + resolved "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz" + integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA== type-check@~0.3.2: version "0.3.2" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" - integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= + resolved "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz" + integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg== dependencies: prelude-ls "~1.1.2" typedarray-to-buffer@~1.0.0: version "1.0.4" - resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-1.0.4.tgz#9bb8ba0e841fb3f4cf1fe7c245e9f3fa8a5fe99c" - integrity sha1-m7i6DoQfs/TPH+fCRenz+opf6Zw= + resolved "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-1.0.4.tgz" + integrity sha1-m7i6DoQfs/TPH+fCRenz+opf6Zw= sha512-vjMKrfSoUDN8/Vnqitw2FmstOfuJ73G6CrSEKnf11A6RmasVxHqfeBcnTb6RsL4pTMuV5Zsv9IiHRphMZyckUw== typedarray@^0.0.6: version "0.0.6" - resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" - integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= + resolved "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz" + integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA== -typical@^2.4.2, typical@^2.6.0: - version "2.6.0" - resolved "https://registry.yarnpkg.com/typical/-/typical-2.6.0.tgz#89d51554ab139848a65bcc2c8772f8fb450c40ed" - integrity sha1-idUVVKsTmEimW8wsh3L4+0UMQO0= - -typical@^2.6.1: +typical@^2.4.2, typical@^2.6.0, typical@^2.6.1: version "2.6.1" - resolved "https://registry.yarnpkg.com/typical/-/typical-2.6.1.tgz#5c080e5d661cbbe38259d2e70a3c7253e873881d" - integrity sha1-XAgOXWYcu+OCWdLnCjxyU+hziB0= + resolved "https://registry.npmjs.org/typical/-/typical-2.6.1.tgz" + integrity sha1-XAgOXWYcu+OCWdLnCjxyU+hziB0= sha512-ofhi8kjIje6npGozTip9Fr8iecmYfEbS06i0JnIg+rh51KakryWF4+jX8lLKZVhy6N+ID45WYSFCxPOdTWCzNg== typical@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/typical/-/typical-4.0.0.tgz#cbeaff3b9d7ae1e2bbfaf5a4e6f11eccfde94fc4" + resolved "https://registry.npmjs.org/typical/-/typical-4.0.0.tgz" integrity sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw== uc.micro@^1.0.1, uc.micro@^1.0.5: version "1.0.6" - resolved "https://registry.yarnpkg.com/uc.micro/-/uc.micro-1.0.6.tgz#9c411a802a409a91fc6cf74081baba34b24499ac" + resolved "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz" integrity sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA== uglify-js@^3.1.4: version "3.17.4" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.17.4.tgz#61678cf5fa3f5b7eb789bb345df29afb8257c22c" + resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz" integrity sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g== unbzip2-stream@^1.0.9: version "1.2.5" - resolved "https://registry.yarnpkg.com/unbzip2-stream/-/unbzip2-stream-1.2.5.tgz#73a033a567bbbde59654b193c44d48a7e4f43c47" + resolved "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.2.5.tgz" integrity sha512-izD3jxT8xkzwtXRUZjtmRwKnZoeECrfZ8ra/ketwOcusbZEp4mjULMnJOCfTDZBgGQAAY1AJ/IgxcwkavcX9Og== dependencies: buffer "^3.0.1" @@ -7749,13 +7283,13 @@ unbzip2-stream@^1.0.9: underscore@~1.9.1: version "1.9.1" - resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.9.1.tgz#06dce34a0e68a7babc29b365b8e74b8925203961" + resolved "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz" integrity sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg== union-value@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.0.tgz#5c71c34cb5bad5dcebe3ea0cd08207ba5aa1aea4" - integrity sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ= + resolved "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz" + integrity sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ= sha512-gKXL/GYJJ6/EUcUoTJ0wvupGylrP1Q0QhkgTMixasTn8J5mEZY3fbcj25gOL3opWToztz7/BUHGm78npw7J57Q== dependencies: arr-union "^3.1.0" get-value "^2.0.6" @@ -7764,128 +7298,118 @@ union-value@^1.0.0: union@~0.4.3: version "0.4.6" - resolved "https://registry.yarnpkg.com/union/-/union-0.4.6.tgz#198fbdaeba254e788b0efcb630bc11f24a2959e0" - integrity sha1-GY+9rrolTniLDvy2MLwR8kopWeA= + resolved "https://registry.npmjs.org/union/-/union-0.4.6.tgz" + integrity sha1-GY+9rrolTniLDvy2MLwR8kopWeA= sha512-2qtrvSgD0GKotLRCNYkIMUOzoaHjXKCtbAP0kc5Po6D+RWTBb+BxlcHlHCYcf+Y+YM7eQicPgAg9mnWQvtoFVA== dependencies: qs "~2.3.3" unique-stream@^2.0.2: version "2.2.1" - resolved "https://registry.yarnpkg.com/unique-stream/-/unique-stream-2.2.1.tgz#5aa003cfbe94c5ff866c4e7d668bb1c4dbadb369" - integrity sha1-WqADz76Uxf+GbE59ZouxxNuts2k= + resolved "https://registry.npmjs.org/unique-stream/-/unique-stream-2.2.1.tgz" + integrity sha1-WqADz76Uxf+GbE59ZouxxNuts2k= sha512-/GNX/RGgMszHjKb8lBKSbTzgKgLfpnyJ4ZgRf73oZxhsrZB5rMkhdgnUleOwTyoBFsAni1iAAUaWuCIPnXDwWA== dependencies: json-stable-stringify "^1.0.0" through2-filter "^2.0.0" unset-value@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" - integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= + resolved "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz" + integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ== dependencies: has-value "^0.3.1" isobject "^3.0.0" unzip-response@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/unzip-response/-/unzip-response-1.0.2.tgz#b984f0877fc0a89c2c773cc1ef7b5b232b5b06fe" - integrity sha1-uYTwh3/AqJwsdzzB73tbIytbBv4= + resolved "https://registry.npmjs.org/unzip-response/-/unzip-response-1.0.2.tgz" + integrity sha1-uYTwh3/AqJwsdzzB73tbIytbBv4= sha512-pwCcjjhEcpW45JZIySExBHYv5Y9EeL2OIGEfrSKp2dMUFGFv4CpvZkwJbVge8OvGH2BNNtJBx67DuKuJhf+N5Q== urijs@1.16.1: version "1.16.1" - resolved "https://registry.yarnpkg.com/urijs/-/urijs-1.16.1.tgz#859ad31890f5f9528727be89f1932c94fb4731e2" - integrity sha1-hZrTGJD1+VKHJ76J8ZMslPtHMeI= + resolved "https://registry.npmjs.org/urijs/-/urijs-1.16.1.tgz" + integrity sha1-hZrTGJD1+VKHJ76J8ZMslPtHMeI= sha512-KJ8xVYdlUEb1zpv+y6oW7SmKFEoOE5cBNv9/u8oWm2umKFt7w4GTRue/UO9XFkplWZ5AH/B1WYMbp63W7Px0Cg== urix@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" - integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= + resolved "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz" + integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg== url-join@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/url-join/-/url-join-2.0.2.tgz#c072756967ad24b8b59e5741551caac78f50b8b7" - integrity sha1-wHJ1aWetJLi1nldBVRyqx49QuLc= + resolved "https://registry.npmjs.org/url-join/-/url-join-2.0.2.tgz" + integrity sha1-wHJ1aWetJLi1nldBVRyqx49QuLc= sha512-RC0XmKAqIiYcwNQMpmgW0O+RzbO1AH6zUIzZJBm3eINHfSaDHdQxFtLAXSG+X+24HbRtrY68IU03LvwAVNy30w== url-parse-lax@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-1.0.0.tgz#7af8f303645e9bd79a272e7a14ac68bc0609da73" - integrity sha1-evjzA2Rem9eaJy56FKxovAYJ2nM= + resolved "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz" + integrity sha1-evjzA2Rem9eaJy56FKxovAYJ2nM= sha512-BVA4lR5PIviy2PMseNd2jbFQ+jwSwQGdJejf5ctd1rEXt0Ypd7yanUK9+lYechVlN5VaTJGsu2U/3MDDu6KgBA== dependencies: prepend-http "^1.0.1" url-regex@^3.0.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/url-regex/-/url-regex-3.2.0.tgz#dbad1e0c9e29e105dd0b1f09f6862f7fdb482724" - integrity sha1-260eDJ4p4QXdCx8J9oYvf9tIJyQ= + resolved "https://registry.npmjs.org/url-regex/-/url-regex-3.2.0.tgz" + integrity sha1-260eDJ4p4QXdCx8J9oYvf9tIJyQ= sha512-dQ9cJzMou5OKr6ZzfvwJkCq3rC72PNXhqz0v3EIhF4a3Np+ujr100AhUx2cKx5ei3iymoJpJrPB3sVSEMdqAeg== dependencies: ip-regex "^1.0.1" url-to-options@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/url-to-options/-/url-to-options-1.0.1.tgz#1505a03a289a48cbd7a434efbaeec5055f5633a9" - integrity sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k= + resolved "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz" + integrity sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k= sha512-0kQLIzG4fdk/G5NONku64rSH/x32NOA39LVQqlK8Le6lvTF6GGRJpqaQFGgU+CLwySIqBSMdwYM0sYcW9f6P4A== url@0.10.3: version "0.10.3" - resolved "https://registry.yarnpkg.com/url/-/url-0.10.3.tgz#021e4d9c7705f21bbf37d03ceb58767402774c64" - integrity sha1-Ah5NnHcF8hu/N9A861h2dAJ3TGQ= + resolved "https://registry.npmjs.org/url/-/url-0.10.3.tgz" + integrity sha1-Ah5NnHcF8hu/N9A861h2dAJ3TGQ= sha512-hzSUW2q06EqL1gKM/a+obYHLIO6ct2hwPuviqTTOcfFVc61UbfJ2Q32+uGL/HCPxKqrdGB5QUwIe7UqlDgwsOQ== dependencies: punycode "1.3.2" querystring "0.2.0" use@^3.1.0: version "3.1.1" - resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" + resolved "https://registry.npmjs.org/use/-/use-3.1.1.tgz" integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== user-home@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/user-home/-/user-home-2.0.0.tgz#9c70bfd8169bc1dcbf48604e0f04b8b49cde9e9f" - integrity sha1-nHC/2Babwdy/SGBODwS4tJzenp8= + resolved "https://registry.npmjs.org/user-home/-/user-home-2.0.0.tgz" + integrity sha1-nHC/2Babwdy/SGBODwS4tJzenp8= sha512-KMWqdlOcjCYdtIJpicDSFBQ8nFwS2i9sslAd6f4+CBGcU4gist2REnr2fxj2YocvJFxSF3ZOHLYLVZnUxv4BZQ== dependencies: os-homedir "^1.0.0" util-deprecate@~1.0.1: version "1.0.2" - resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" - integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= + resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" + integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== util.promisify@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030" + resolved "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz" integrity sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA== dependencies: define-properties "^1.1.2" object.getownpropertydescriptors "^2.0.3" -uuid@3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.1.0.tgz#3dd3d3e790abc24d7b0d3a034ffababe28ebbc04" - integrity sha512-DIWtzUkw04M4k3bf1IcpS2tngXEL26YUD2M0tMDUpnUrz2hgzUBlD55a4FjdLGPvfHxS6uluGWvaVEqgBcVa+g== - uuid@^2.0.1: version "2.0.3" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.3.tgz#67e2e863797215530dff318e5bf9dcebfd47b21a" - integrity sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho= - -uuid@^3.0.0: - version "3.3.2" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" - integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== + resolved "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz" + integrity sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho= sha512-FULf7fayPdpASncVy4DLh3xydlXEJJpvIELjYjNeQWYUZ9pclcpvCZSr2gkmN2FrrGcI7G/cJsIEwk5/8vfXpg== -uuid@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.0.1.tgz#6544bba2dfda8c1cf17e629a3a305e2bb1fee6c1" - integrity sha1-ZUS7ot/ajBzxfmKaOjBeK7H+5sE= +uuid@^3.0.0, uuid@^3.0.1, uuid@3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz" + integrity sha512-DIWtzUkw04M4k3bf1IcpS2tngXEL26YUD2M0tMDUpnUrz2hgzUBlD55a4FjdLGPvfHxS6uluGWvaVEqgBcVa+g== vali-date@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/vali-date/-/vali-date-1.0.0.tgz#1b904a59609fb328ef078138420934f6b86709a6" - integrity sha1-G5BKWWCfsyjvB4E4Qgk09rhnCaY= + resolved "https://registry.npmjs.org/vali-date/-/vali-date-1.0.0.tgz" + integrity sha1-G5BKWWCfsyjvB4E4Qgk09rhnCaY= sha512-sgECfZthyaCKW10N0fm27cg8HYTFK5qMWgypqkXMQ4Wbl/zZKx7xZICgcoxIIE+WFAP/MBL2EFwC/YvLxw3Zeg== verror@1.10.0: version "1.10.0" - resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" - integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= + resolved "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz" + integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw== dependencies: assert-plus "^1.0.0" core-util-is "1.0.2" @@ -7893,16 +7417,16 @@ verror@1.10.0: vinyl-assign@^1.0.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/vinyl-assign/-/vinyl-assign-1.2.1.tgz#4d198891b5515911d771a8cd9c5480a46a074a45" - integrity sha1-TRmIkbVRWRHXcajNnFSApGoHSkU= + resolved "https://registry.npmjs.org/vinyl-assign/-/vinyl-assign-1.2.1.tgz" + integrity sha1-TRmIkbVRWRHXcajNnFSApGoHSkU= sha512-jUVK1MkXgsZDdyUAy0rnrcmPeuR/ZLwsaS377zaaciz9SoDRVPIjHlUcYVcUAzLD+AolsLxMMwSe/VP77lAvow== dependencies: object-assign "^4.0.1" readable-stream "^2.0.0" vinyl-fs@^2.2.0: version "2.4.4" - resolved "https://registry.yarnpkg.com/vinyl-fs/-/vinyl-fs-2.4.4.tgz#be6ff3270cb55dfd7d3063640de81f25d7532239" - integrity sha1-vm/zJwy1Xf19MGNkDegfJddTIjk= + resolved "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-2.4.4.tgz" + integrity sha1-vm/zJwy1Xf19MGNkDegfJddTIjk= sha512-lxMlQW/Wxk/pwhooY3Ut0Q11OH5ZvZfV0Gg1c306fBNWznQ6ZeQaCdE7XX0O/PpGSqgAsHMBxwFgcGxiYW3hZg== dependencies: duplexify "^3.2.0" glob-stream "^5.3.2" @@ -7924,16 +7448,16 @@ vinyl-fs@^2.2.0: vinyl@^0.4.3: version "0.4.6" - resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-0.4.6.tgz#2f356c87a550a255461f36bbeb2a5ba8bf784847" - integrity sha1-LzVsh6VQolVGHza76ypbqL94SEc= + resolved "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz" + integrity sha1-LzVsh6VQolVGHza76ypbqL94SEc= sha512-pmza4M5VA15HOImIQYWhoXGlGNafCm0QK5BpBUXkzzEwrRxKqBsbAhTfkT2zMcJhUX1G1Gkid0xaV8WjOl7DsA== dependencies: clone "^0.2.0" clone-stats "^0.0.1" vinyl@^0.5.0: version "0.5.3" - resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-0.5.3.tgz#b0455b38fc5e0cf30d4325132e461970c2091cde" - integrity sha1-sEVbOPxeDPMNQyUTLkYZcMIJHN4= + resolved "https://registry.npmjs.org/vinyl/-/vinyl-0.5.3.tgz" + integrity sha1-sEVbOPxeDPMNQyUTLkYZcMIJHN4= sha512-P5zdf3WB9uzr7IFoVQ2wZTmUwHL8cMZWJGzLBNCHNZ3NB6HTMsYABtt7z8tAGIINLXyAob9B9a1yzVGMFOYKEA== dependencies: clone "^1.0.0" clone-stats "^0.0.1" @@ -7941,8 +7465,8 @@ vinyl@^0.5.0: vinyl@^1.0.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-1.2.0.tgz#5c88036cf565e5df05558bfc911f8656df218884" - integrity sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ= + resolved "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz" + integrity sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ= sha512-Ci3wnR2uuSAWFMSglZuB8Z2apBdtOyz8CV7dC6/U1XbltXBC+IuutUkXQISz01P+US2ouBuesSbV6zILZ6BuzQ== dependencies: clone "^1.0.0" clone-stats "^0.0.1" @@ -7950,13 +7474,13 @@ vinyl@^1.0.0: vlq@^0.2.1: version "0.2.1" - resolved "https://registry.yarnpkg.com/vlq/-/vlq-0.2.1.tgz#14439d711891e682535467f8587c5630e4222a6c" - integrity sha1-FEOdcRiR5oJTVGf4WHxWMOQiKmw= + resolved "https://registry.npmjs.org/vlq/-/vlq-0.2.1.tgz" + integrity sha1-FEOdcRiR5oJTVGf4WHxWMOQiKmw= sha512-nHsLkUCZjkeZgTWmMA1htGsht29a8Qdf+o2LhJlMN3cIY24DNpHapLWnUTJ3rpZ3eD3240yiS6nRya/km8L7lQ== wait-on@2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/wait-on/-/wait-on-2.0.2.tgz#0a84fd07024c6fc268cb0eabe585be217aaf2baa" - integrity sha1-CoT9BwJMb8Joyw6r5YW+IXqvK6o= + resolved "https://registry.npmjs.org/wait-on/-/wait-on-2.0.2.tgz" + integrity sha1-CoT9BwJMb8Joyw6r5YW+IXqvK6o= sha512-m38JkVs3JDs5Ho+nlhw7zFzFn7rnSmm6zShbAjSoI2t/xvxQTiEX+z/uAJkyoIeMDferYFWsY0zocwmF+zQNkA== dependencies: core-js "^2.4.1" joi "^9.2.0" @@ -7966,82 +7490,65 @@ wait-on@2.0.2: walk-back@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/walk-back/-/walk-back-2.0.1.tgz#554e2a9d874fac47a8cb006bf44c2f0c4998a0a4" - integrity sha1-VU4qnYdPrEeoywBr9EwvDEmYoKQ= + resolved "https://registry.npmjs.org/walk-back/-/walk-back-2.0.1.tgz" + integrity sha1-VU4qnYdPrEeoywBr9EwvDEmYoKQ= sha512-Nb6GvBR8UWX1D+Le+xUq0+Q1kFmRBIWVrfLnQAOmcpEzA9oAxwJ9gIr36t9TWYfzvWRvuMtjHiVsJYEkXWaTAQ== walk-back@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/walk-back/-/walk-back-3.0.1.tgz#0c0012694725604960d6c2f75aaf1a1e7d455d35" + resolved "https://registry.npmjs.org/walk-back/-/walk-back-3.0.1.tgz" integrity sha512-umiNB2qLO731Sxbp6cfZ9pwURJzTnftxE4Gc7hq8n/ehkuXC//s9F65IEIJA2ZytQZ1ZOsm/Fju4IWx0bivkUQ== ware@^1.2.0: version "1.3.0" - resolved "https://registry.yarnpkg.com/ware/-/ware-1.3.0.tgz#d1b14f39d2e2cb4ab8c4098f756fe4b164e473d4" - integrity sha1-0bFPOdLiy0q4xAmPdW/ksWTkc9Q= + resolved "https://registry.npmjs.org/ware/-/ware-1.3.0.tgz" + integrity sha1-0bFPOdLiy0q4xAmPdW/ksWTkc9Q= sha512-Y2HUDMktriUm+SR2gZWxlrszcgtXExlhQYZ8QJNYbl22jum00KIUcHJ/h/sdAXhWTJcbSkiMYN9Z2tWbWYSrrw== dependencies: wrap-fn "^0.1.0" websocket-driver@>=0.5.1: version "0.6.5" - resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.6.5.tgz#5cb2556ceb85f4373c6d8238aa691c8454e13a36" - integrity sha1-XLJVbOuF9Dc8bYI4qmkchFThOjY= + resolved "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.6.5.tgz" + integrity sha1-XLJVbOuF9Dc8bYI4qmkchFThOjY= sha512-oBx6ZM1Gs5q2jwZuSN/Qxyy/fbgomV8+vqsmipaPKB/74hjHlKuM07jNmRhn4qa2AdUwsgxrltq+gaPsHgcl0Q== dependencies: websocket-extensions ">=0.1.1" websocket-extensions@>=0.1.1: version "0.1.1" - resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.1.tgz#76899499c184b6ef754377c2dbb0cd6cb55d29e7" - integrity sha1-domUmcGEtu91Q3fC27DNbLVdKec= + resolved "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.1.tgz" + integrity sha1-domUmcGEtu91Q3fC27DNbLVdKec= sha512-j3+ycRZsSqNQZdpj5r+UZJHNlYKR3EGpL9cbVHf60+K9BuLJdNebVXrVzmDlLzN+im56Ll9BssyG8BwRmDlEQw== whatwg-fetch@2.0.3: version "2.0.3" - resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz#9c84ec2dcf68187ff00bc64e1274b442176e1c84" - integrity sha1-nITsLc9oGH/wC8ZOEnS0QhduHIQ= - -which@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/which/-/which-1.1.1.tgz#9ce512459946166e12c083f08ec073380fc8cbbb" - integrity sha1-nOUSRZlGFm4SwIPwjsBzOA/Iy7s= - dependencies: - is-absolute "^0.1.7" + resolved "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz" + integrity sha1-nITsLc9oGH/wC8ZOEnS0QhduHIQ= sha512-SA2KdOXATOroD3EBUYvcdugsusXS5YiQFqwskSbsp5b1gK8HpNi/YP0jcy/BDpdllp305HMnrsVf9K7Be9GiEQ== which@^1.2.12: version "1.2.14" - resolved "https://registry.yarnpkg.com/which/-/which-1.2.14.tgz#9a87c4378f03e827cecaf1acdf56c736c01c14e5" - integrity sha1-mofEN48D6CfOyvGs31bHNsAcFOU= + resolved "https://registry.npmjs.org/which/-/which-1.2.14.tgz" + integrity sha1-mofEN48D6CfOyvGs31bHNsAcFOU= sha512-16uPglFkRPzgiUXYMi1Jf8Z5EzN1iB4V0ZtMXcHZnwsBtQhhHeCqoWw7tsUY42hJGNDWtUsVLTjakIa5BgAxCw== dependencies: isexe "^2.0.0" -wide-align@^1.1.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" - integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== +which@1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/which/-/which-1.1.1.tgz" + integrity sha1-nOUSRZlGFm4SwIPwjsBzOA/Iy7s= sha512-FgjRix4uC5hAbzCmYO/D0C/6riWHLNWqI2k+9s3P9469R3monfE+/mEyFufdAhhp9pJiw4+Gr4TUI9VEWMPcdA== dependencies: - string-width "^1.0.2 || 2" + is-absolute "^0.1.7" wordwrap@^1.0.0, wordwrap@~1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" - integrity sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus= + resolved "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz" + integrity sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus= sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q== wordwrap@~0.0.2: version "0.0.3" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" - integrity sha1-o9XabNXAvAAI03I0u68b7WMFkQc= - -wordwrapjs@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/wordwrapjs/-/wordwrapjs-2.0.0.tgz#ab55f695e6118da93858fdd70c053d1c5e01ac20" - integrity sha1-q1X2leYRjak4WP3XDAU9HF4BrCA= - dependencies: - array-back "^1.0.3" - feature-detect-es6 "^1.3.1" - reduce-flatten "^1.0.1" - typical "^2.6.0" + resolved "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz" + integrity sha1-o9XabNXAvAAI03I0u68b7WMFkQc= sha512-1tMA907+V4QmxV7dbRvb4/8MaRALK6q9Abid3ndMYnbyo8piisCmeONVqVSXqQA3KaP4SLt5b7ud6E2sqP8TFw== wordwrapjs@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/wordwrapjs/-/wordwrapjs-3.0.0.tgz#c94c372894cadc6feb1a66bff64e1d9af92c5d1e" + resolved "https://registry.npmjs.org/wordwrapjs/-/wordwrapjs-3.0.0.tgz" integrity sha512-mO8XtqyPvykVCsrwj5MlOVWvSnCdT+C+QVbm6blradR7JExAhbkZ7hZ9A+9NUtwzSqrlUo9a67ws0EiILrvRpw== dependencies: reduce-flatten "^1.0.1" @@ -8049,97 +7556,84 @@ wordwrapjs@^3.0.0: wrap-fn@^0.1.0: version "0.1.5" - resolved "https://registry.yarnpkg.com/wrap-fn/-/wrap-fn-0.1.5.tgz#f21b6e41016ff4a7e31720dbc63a09016bdf9845" - integrity sha1-8htuQQFv9KfjFyDbxjoJAWvfmEU= + resolved "https://registry.npmjs.org/wrap-fn/-/wrap-fn-0.1.5.tgz" + integrity sha1-8htuQQFv9KfjFyDbxjoJAWvfmEU= sha512-xDLdGx0M8JQw9QDAC9s5NUxtg9MI09F6Vbxa2LYoSoCvzJnx2n81YMIfykmXEGsUvuLaxnblJTzhSOjUOX37ag== dependencies: co "3.1.0" wrappy@1: version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= + resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" + integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== write@^0.2.1: version "0.2.1" - resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757" - integrity sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c= + resolved "https://registry.npmjs.org/write/-/write-0.2.1.tgz" + integrity sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c= sha512-CJ17OoULEKXpA5pef3qLj5AxTJ6mSt7g84he2WIskKwqFO4T97d5V7Tadl0DYDk7qyUOQD5WlUlOMChaYrhxeA== dependencies: mkdirp "^0.5.1" xml2js@0.4.17: version "0.4.17" - resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.17.tgz#17be93eaae3f3b779359c795b419705a8817e868" - integrity sha1-F76T6q4/O3eTWceVtBlwWogX6Gg= + resolved "https://registry.npmjs.org/xml2js/-/xml2js-0.4.17.tgz" + integrity sha1-F76T6q4/O3eTWceVtBlwWogX6Gg= sha512-1O7wk/NTQN0UEOItIYTxK4qP4sMUVU60MbF4Nj0a8jd6eebMXOicVI/KFOEsYKKH4uBpx6XG9ZGZctXK5rtO5Q== dependencies: sax ">=0.6.0" xmlbuilder "^4.1.0" -xmlbuilder@4.2.1, xmlbuilder@^4.1.0: +xmlbuilder@^4.1.0, xmlbuilder@4.2.1: version "4.2.1" - resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-4.2.1.tgz#aa58a3041a066f90eaa16c2f5389ff19f3f461a5" - integrity sha1-qlijBBoGb5DqoWwvU4n/GfP0YaU= + resolved "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-4.2.1.tgz" + integrity sha1-qlijBBoGb5DqoWwvU4n/GfP0YaU= sha512-oEePiEefhQhAeUnwRnIBLBWmk/fsWWbQ53EEWsRuzECbQ3m5o/Esmq6H47CYYwSLW+Ynt0rS9hd0pd2ogMAWjg== dependencies: lodash "^4.0.0" xmlcreate@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/xmlcreate/-/xmlcreate-2.0.1.tgz#2ec38bd7b708d213fd1a90e2431c4af9c09f6a52" + resolved "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.1.tgz" integrity sha512-MjGsXhKG8YjTKrDCXseFo3ClbMGvUD4en29H2Cev1dv4P/chlpw6KdYmlCWDkhosBVKRDjM836+3e3pm1cBNJA== -"xtend@>=4.0.0 <4.1.0-0", xtend@^4.0.0, xtend@~4.0.0, xtend@~4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" - integrity sha1-pcbVMr5lbiPbgg77lDofBJmNY68= - xtend@^2.2.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-2.2.0.tgz#eef6b1f198c1c8deafad8b1765a04dad4a01c5a9" - integrity sha1-7vax8ZjByN6vrYsXZaBNrUoBxak= + resolved "https://registry.npmjs.org/xtend/-/xtend-2.2.0.tgz" + integrity sha1-7vax8ZjByN6vrYsXZaBNrUoBxak= sha512-SLt5uylT+4aoXxXuwtQp5ZnMMzhDb1Xkg4pEqc00WUJCQifPfV9Ub1VrNhp9kXkrjZD2I2Hl8WnjP37jzZLPZw== + +xtend@^4.0.0, "xtend@>=4.0.0 <4.1.0-0", xtend@~4.0.0, xtend@~4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" + integrity sha1-pcbVMr5lbiPbgg77lDofBJmNY68= sha512-iTwvhNBRetXWe81+VcIw5YeadVSWyze7uA7nVnpP13ulrpnJ3UfQm5ApGnrkmxDJFdrblRdZs0EvaTCIfei5oQ== xtend@~2.0.4: version "2.0.6" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-2.0.6.tgz#5ea657a6dba447069c2e59c58a1138cb0c5e6cee" - integrity sha1-XqZXptukRwacLlnFihE4ywxebO4= + resolved "https://registry.npmjs.org/xtend/-/xtend-2.0.6.tgz" + integrity sha1-XqZXptukRwacLlnFihE4ywxebO4= sha512-fOZg4ECOlrMl+A6Msr7EIFcON1L26mb4NY5rurSkOex/TWhazOrg6eXD/B0XkuiYcYhQDWLXzQxLMVJ7LXwokg== dependencies: is-object "~0.1.2" object-keys "~0.2.0" xtend@~2.1.2: version "2.1.2" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-2.1.2.tgz#6efecc2a4dad8e6962c4901b337ce7ba87b5d28b" - integrity sha1-bv7MKk2tjmlixJAbM3znuoe10os= + resolved "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz" + integrity sha1-bv7MKk2tjmlixJAbM3znuoe10os= sha512-vMNKzr2rHP9Dp/e1NQFnLQlwlhp9L/LfvnsVdHxN1f+uggyVI3i08uD14GPvCToPkdsRfyPqIyYGmIk58V98ZQ== dependencies: object-keys "~0.4.0" xtend@~3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-3.0.0.tgz#5cce7407baf642cba7becda568111c493f59665a" - integrity sha1-XM50B7r2Qsunvs2laBEcST9ZZlo= - -yallist@^3.0.0, yallist@^3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.0.3.tgz#b4b049e314be545e3ce802236d6cd22cd91c3de9" - integrity sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A== + resolved "https://registry.npmjs.org/xtend/-/xtend-3.0.0.tgz" + integrity sha1-XM50B7r2Qsunvs2laBEcST9ZZlo= sha512-sp/sT9OALMjRW1fKDlPeuSZlDQpkqReA0pyJukniWbTGoEKefHxhGJynE3PNhUMlcM8qWIjPwecwCw4LArS5Eg== yargs-parser@^10.0.0: version "10.1.0" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-10.1.0.tgz#7202265b89f7e9e9f2e5765e0fe735a905edbaa8" + resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz" integrity sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ== dependencies: camelcase "^4.1.0" -yauzl@^2.2.1, yauzl@^2.5.0: +yauzl@^2.2.1, yauzl@^2.4.2, yauzl@^2.5.0: version "2.7.0" - resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.7.0.tgz#e21d847868b496fc29eaec23ee87fdd33e9b2bce" - integrity sha1-4h2EeGi0lvwp6uwj7of90z6bK84= - dependencies: - buffer-crc32 "~0.2.3" - fd-slicer "~1.0.1" - -yauzl@^2.4.2: - version "2.8.0" - resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.8.0.tgz#79450aff22b2a9c5a41ef54e02db907ccfbf9ee2" - integrity sha1-eUUK/yKyqcWkHvVOAtuQfM+/nuI= + resolved "https://registry.npmjs.org/yauzl/-/yauzl-2.7.0.tgz" + integrity sha1-4h2EeGi0lvwp6uwj7of90z6bK84= sha512-Va3zHtr8LlgGA793wwelHBRqUy8EFStjxv80VpBRuvgK6twAn4L7aPs/M7S0tVFbR3LXsIqAPZRbCDbKDZlGhg== dependencies: buffer-crc32 "~0.2.3" fd-slicer "~1.0.1" From 316c38bfe7a193e6bde68b116b07d6e4940d8c8b Mon Sep 17 00:00:00 2001 From: Scott Dixon Date: Fri, 2 Feb 2024 15:10:55 +1000 Subject: [PATCH 02/19] cart.create support --- README.md | 23 ++++- fixtures/cart-create-fixture.js | 51 ++++++++++ ...create-invalid-variant-id-error-fixture.js | 7 ++ src/cart-resource.js | 59 ++++++----- src/graphql/cartCreateMutation.graphql | 12 +++ src/handle-cart-mutation.js | 25 +++++ test/client-cart-integration-test.js | 97 ++++++++++--------- 7 files changed, 195 insertions(+), 79 deletions(-) create mode 100644 fixtures/cart-create-fixture.js create mode 100644 fixtures/cart-create-invalid-variant-id-error-fixture.js create mode 100644 src/graphql/cartCreateMutation.graphql create mode 100644 src/handle-cart-mutation.js diff --git a/README.md b/README.md index 61de2e5b9..552e733c5 100644 --- a/README.md +++ b/README.md @@ -166,8 +166,27 @@ client.collection.fetchWithProducts(collectionId, {productsFirst: 10}).then((col ### Creating a Cart ```javascript -// Create an empty checkout -client.cart.create().then((cart) => { +const input = { + lines: { + merchandiseId: 'gid://shopify/ProductVariant/13666012889144', + quantity: 5, + attributes: [{key: "MyKey", value: "MyValue"}] + }, + note: 'This is a cart note!' +]; + +// Create a cart +client.cart.create(input).then((cart) => { + // Do something with the cart + console.log(cart); +}); +``` + +### Fetching a Cart +```javascript +const cartId = 'gid://shopify/Cart/Z2NwLWV1cm9wZS13ZXN0NDowMUhOTTI0QVZYV1NOSEVNOUVCQ1JSNUhSVg' + +client.cart.fetch(cartId).then((cart) => { // Do something with the cart console.log(cart); }); diff --git a/fixtures/cart-create-fixture.js b/fixtures/cart-create-fixture.js new file mode 100644 index 000000000..44a18e91a --- /dev/null +++ b/fixtures/cart-create-fixture.js @@ -0,0 +1,51 @@ +export default { + data: { + cartCreate: { + userErrors: [], + cart: { + attributes: [ + { + key: 'cart_attribute', + value: 'This is a cart attribute' + } + ], + checkoutUrl: 'https://secure-us.gcds.com/cart/c/Z2NwLWV1cm9wZS13ZXN0NDowMUhOSERHWUNTNDlSMUtQNk1HUjlZOTdDSA?key=73de96370dea19c18996cebea3b31a1b', + discountCodes: [], + id: 'gid://shopify/Cart/Z2NwLWV1cm9wZS13ZXN0NDowMUhOSERHWUNTNDlSMUtQNk1HUjlZOTdDSA', + createdAt: '2024-02-01T04:06:11Z', + updatedAt: '2024-02-01T04:06:11Z', + lines: { + pageInfo: { + hasNextPage: false, + hasPreviousPage: false + }, + edges: [ + { + node: { + id: 'gid://shopify/CartLine/a07f5410-ea7a-41ac-a794-839c1e0d599c?cart=Z2NwLWV1cm9wZS13ZXN0NDowMUhOSERHWUNTNDlSMUtQNk1HUjlZOTdDSA', + merchandise: { + id: 'gid://shopify/ProductVariant/43162292814051' + } + } + } + ] + }, + cost: { + totalAmount: { + amount: '0.0', + currencyCode: 'USD' + }, + subtotalAmount: { + amount: '0.0', + currencyCode: 'USD' + }, + totalTaxAmount: { + amount: '0.0', + currencyCode: 'USD' + }, + totalDutyAmount: null + } + } + } + } +}; diff --git a/fixtures/cart-create-invalid-variant-id-error-fixture.js b/fixtures/cart-create-invalid-variant-id-error-fixture.js new file mode 100644 index 000000000..af0e5032a --- /dev/null +++ b/fixtures/cart-create-invalid-variant-id-error-fixture.js @@ -0,0 +1,7 @@ +export default { + "errors": [ + { + "message": "Variable input of type CartInput! was provided invalid value" + } + ] +} diff --git a/src/cart-resource.js b/src/cart-resource.js index a5eb68642..2ff94680d 100644 --- a/src/cart-resource.js +++ b/src/cart-resource.js @@ -1,10 +1,10 @@ import Resource from './resource'; import defaultResolver from './default-resolver'; -// import handleCheckoutMutation from './handle-checkout-mutation'; +import handleCartMutation from './handle-cart-mutation'; // GraphQL import cartNodeQuery from './graphql/cartNodeQuery.graphql'; -// import checkoutCreateMutation from './graphql/checkoutCreateMutation.graphql'; +import cartCreateMutation from './graphql/cartCreateMutation.graphql'; // import checkoutLineItemsAddMutation from './graphql/checkoutLineItemsAddMutation.graphql'; // import checkoutLineItemsRemoveMutation from './graphql/checkoutLineItemsRemoveMutation.graphql'; // import checkoutLineItemsReplaceMutation from './graphql/checkoutLineItemsReplaceMutation.graphql'; @@ -49,34 +49,33 @@ class CartResource extends Resource { }); } - // /** - // * Creates a checkout. - // * - // * @example - // * const input = { - // * lineItems: [ - // * {variantId: 'Z2lkOi8vc2hvcGlmeS9Qcm9kdWN0VmFyaWFudC8yOTEwNjAyMjc5Mg==', quantity: 5} - // * ] - // * }; - // * - // * client.checkout.create(input).then((checkout) => { - // * // Do something with the newly created checkout - // * }); - // * - // * @param {Object} [input] An input object containing zero or more of: - // * @param {String} [input.email] An email connected to the checkout. - // * @param {Object[]} [input.lineItems] A list of line items in the checkout. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/checkoutlineiteminput|Storefront API reference} for valid input fields for each line item. - // * @param {Object} [input.shippingAddress] A shipping address. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/mailingaddressinput|Storefront API reference} for valid input fields. - // * @param {String} [input.note] A note for the checkout. - // * @param {Object[]} [input.customAttributes] A list of custom attributes for the checkout. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/attributeinput|Storefront API reference} for valid input fields. - // * @param {String} [input.presentmentCurrencyCode ] A presentment currency code. See the {@link https://help.shopify.com/en/api/storefront-api/reference/enum/currencycode|Storefront API reference} for valid currency code values. - // * @return {Promise|GraphModel} A promise resolving with the created checkout. - // */ - // create(input = {}) { - // return this.graphQLClient - // .send(checkoutCreateMutation, {input}) - // .then(handleCheckoutMutation('checkoutCreate', this.graphQLClient)); - // } + /** + * Creates a cart. + * + * @example + * const input = { + * lines: [ + * {merchandiseId: 'Z2lkOi8vc2hvcGlmeS9Qcm9kdWN0VmFyaWFudC8yOTEwNjAyMjc5Mg==', quantity: 5} + * ] + * }; + * + * client.cart.create(input).then((cart) => { + * // Do something with the newly created cart + * }); + * + * @param {Object} [input] An input object containing zero or more of: + * @param {String} [input.buyerIdentity.email] An email connected to the checkout. + * @param {Object[]} [input.lines] A list of line items in the checkout. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/checkoutlineiteminput|Storefront API reference} for valid input fields for each line item. + * @param {Object} [input.deliveryAddressPreferences.deliveryAddress] A shipping address. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/mailingaddressinput|Storefront API reference} for valid input fields. + * @param {String} [input.note] A note for the checkout. + * @param {Object[]} [input.attributes] A list of custom attributes for the checkout. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/attributeinput|Storefront API reference} for valid input fields. + * @return {Promise|GraphModel} A promise resolving with the created checkout. + */ + create(input = {}) { + return this.graphQLClient + .send(cartCreateMutation, {input}) + .then(handleCartMutation('cartCreate', this.graphQLClient)); + } // /** // * Replaces the value of checkout's custom attributes and/or note with values defined in the input diff --git a/src/graphql/cartCreateMutation.graphql b/src/graphql/cartCreateMutation.graphql new file mode 100644 index 000000000..00c3b1198 --- /dev/null +++ b/src/graphql/cartCreateMutation.graphql @@ -0,0 +1,12 @@ +mutation ($input: CartInput!) { + cartCreate(input: $input) { + userErrors { + code + field + message + } + cart { + ...CartFragment + } + } +} diff --git a/src/handle-cart-mutation.js b/src/handle-cart-mutation.js new file mode 100644 index 000000000..e5eb660ff --- /dev/null +++ b/src/handle-cart-mutation.js @@ -0,0 +1,25 @@ +export default function handleCartMutation(mutationRootKey, client) { + return function({data = {}, errors, model = {}}) { + const rootData = data[mutationRootKey]; + const rootModel = model[mutationRootKey]; + + if (rootData && rootData.cart) { + return client.fetchAllPages(rootModel.cart.lineItems, {pageSize: 250}).then((lineItems) => { + rootModel.cart.attrs.lineItems = lineItems; + rootModel.cart.errors = errors; + + return rootModel.cart; + }); + } + + if (errors && errors.length) { + return Promise.reject(new Error(JSON.stringify(errors))); + } + + if (rootData && rootData.userErrors && rootData.userErrors.length) { + return Promise.reject(new Error(JSON.stringify(rootData.userErrors))); + } + + return Promise.reject(new Error(`The ${mutationRootKey} mutation failed due to an unknown error.`)); + }; +} diff --git a/test/client-cart-integration-test.js b/test/client-cart-integration-test.js index ceacfda83..adfe39091 100644 --- a/test/client-cart-integration-test.js +++ b/test/client-cart-integration-test.js @@ -5,9 +5,9 @@ import fetchMockPostOnce from './fetch-mock-helper'; // fixtures import cartFixture from '../fixtures/cart-fixture'; -// import checkoutNullFixture from '../fixtures/node-null-fixture'; -// import checkoutCreateFixture from '../fixtures/checkout-create-fixture'; -// import checkoutCreateInvalidVariantIdErrorFixture from '../fixtures/checkout-create-invalid-variant-id-error-fixture'; +import cartNullFixture from '../fixtures/node-null-fixture'; +import cartCreateFixture from '../fixtures/cart-create-fixture'; +import cartCreateInvalidVariantIdErrorFixture from '../fixtures/cart-create-invalid-variant-id-error-fixture'; // import checkoutCreateWithPaginatedLineItemsFixture from '../fixtures/checkout-create-with-paginated-line-items-fixture'; // import {secondPageLineItemsFixture, thirdPageLineItemsFixture} from '../fixtures/paginated-line-items-fixture'; // import checkoutLineItemsAddFixture from '../fixtures/checkout-line-items-add-fixture'; @@ -71,54 +71,57 @@ suite('client-cart-integration-test', () => { }); }); - // test('it resolves with null on Client.checkout#fetch for a bad checkoutId', () => { - // fetchMockPostOnce(fetchMock, apiUrl, checkoutNullFixture); + test('it resolves with null on Client.checkout#fetch for a bad checkoutId', () => { + fetchMockPostOnce(fetchMock, apiUrl, cartNullFixture); - // const checkoutId = checkoutFixture.data.node.id; - - // return client.checkout.fetch(checkoutId).then((checkout) => { - // assert.equal(checkout, null); - // assert.ok(fetchMock.done()); - // }); - // }); - - // test('it resolves with a checkout on Client.checkout#create', () => { - // const input = { - // lineItems: [ - // { - // variantId: 'an-id', - // quantity: 5 - // } - // ], - // shippingAddress: {} - // }; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutCreateFixture); - - // return client.checkout.create(input).then((checkout) => { - // assert.equal(checkout.id, checkoutCreateFixture.data.checkoutCreate.checkout.id); - // assert.ok(fetchMock.done()); - // }); - // }); + const cartId = cartFixture.data.node.id; - // test('it resolve with user errors on Client.checkout#create when variantId is invalid', () => { - // const input = { - // lineItems: [ - // { - // variantId: 'a-bad-id', - // quantity: 5 - // } - // ] - // }; + return client.cart.fetch(cartId).then((cart) => { + assert.equal(cart, null); + assert.ok(fetchMock.done()); + }); + }); - // fetchMockPostOnce(fetchMock, apiUrl, checkoutCreateInvalidVariantIdErrorFixture); + test('it resolves with a cart on Client.cart#create', () => { + const input = { + lines: [ + { + merchandiseId: 'an-id', + quantity: 5 + } + ], + note: 'This is a note!', + deliveryAddressPreferences: { + deliveryAddress: {} + } + }; + + fetchMockPostOnce(fetchMock, apiUrl, cartCreateFixture); + + return client.cart.create(input).then((cart) => { + assert.equal(cart.id, cartCreateFixture.data.cartCreate.cart.id); + assert.ok(fetchMock.done()); + }); + }); - // return client.checkout.create(input).then(() => { - // assert.ok(false, 'Promise should not resolve'); - // }).catch((error) => { - // assert.equal(error.message, '[{"message":"Variable input of type CheckoutCreateInput! was provided invalid value"}]'); - // }); - // }); + test('it resolve with user errors on Client.checkout#create when variantId is invalid', () => { + const input = { + lines: [ + { + variantId: 'a-bad-id', + quantity: 5 + } + ] + }; + + fetchMockPostOnce(fetchMock, apiUrl, cartCreateInvalidVariantIdErrorFixture); + + return client.cart.create(input).then(() => { + assert.ok(false, 'Promise should not resolve'); + }).catch((error) => { + assert.equal(error.message, '[{"message":"Variable input of type CartInput! was provided invalid value"}]'); + }); + }); // test('it resolves with a checkout on Client.checkout#updateAttributes', () => { // const checkoutId = 'Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE='; From 8415e8aedcbc5b1acbf4055f8bf8d8e25c3976f2 Mon Sep 17 00:00:00 2001 From: Scott Dixon Date: Mon, 5 Feb 2024 16:39:28 +1000 Subject: [PATCH 03/19] cart.updateAttributes --- README.md | 10 ++++ fixtures/cart-fixture.js | 2 +- fixtures/cart-update-attrs-fixture.js | 59 +++++++++++++++++++ ...t-update-attrs-with-user-errors-fixture.js | 20 +++++++ src/cart-resource.js | 59 +++++++++++-------- .../cartAttributesUpdateMutation.graphql | 11 ++++ test/client-cart-integration-test.js | 53 +++++------------ 7 files changed, 152 insertions(+), 62 deletions(-) create mode 100644 fixtures/cart-update-attrs-fixture.js create mode 100644 fixtures/cart-update-attrs-with-user-errors-fixture.js create mode 100644 src/graphql/cartAttributesUpdateMutation.graphql diff --git a/README.md b/README.md index 552e733c5..ec77baf68 100644 --- a/README.md +++ b/README.md @@ -192,6 +192,16 @@ client.cart.fetch(cartId).then((cart) => { }); ``` +### Updating Cart Attributes +```javascript +const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; +const attributes = [{key: "MyKey", value: "MyValue"}]; + +client.cart.updateAttributes(cartId, attributes).then((cart) => { + // Do something with the updated cart +}); +``` + ### Creating a Checkout ```javascript // Create an empty checkout diff --git a/fixtures/cart-fixture.js b/fixtures/cart-fixture.js index 91e025c9a..28043bf11 100644 --- a/fixtures/cart-fixture.js +++ b/fixtures/cart-fixture.js @@ -8,7 +8,7 @@ export default { value: 'This is a cart attribute' } ], - checkoutUrl: 'https://secure-us.gcds.com/cart/c/Z2NwLWV1cm9wZS13ZXN0NDowMUhOSERHWUNTNDlSMUtQNk1HUjlZOTdDSA?key=73de96370dea19c18996cebea3b31a1b', + checkoutUrl: 'https://myshopify.com/cart/c/Z2NwLWV1cm9wZS13ZXN0NDowMUhOSERHWUNTNDlSMUtQNk1HUjlZOTdDSA?key=73de96370dea19c18996cebea3b31a1b', discountCodes: [], id: 'gid://shopify/Cart/Z2NwLWV1cm9wZS13ZXN0NDowMUhOSERHWUNTNDlSMUtQNk1HUjlZOTdDSA', createdAt: '2024-02-01T04:06:11Z', diff --git a/fixtures/cart-update-attrs-fixture.js b/fixtures/cart-update-attrs-fixture.js new file mode 100644 index 000000000..cdad1cc07 --- /dev/null +++ b/fixtures/cart-update-attrs-fixture.js @@ -0,0 +1,59 @@ +export default { + data: { + cartAttributesUpdate: { + cart: { + id: 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR', + createdAt: '2024-02-05T06:06:28Z', + updatedAt: '2024-02-05T06:06:29Z', + lines: { + pageInfo: { + hasNextPage: false, + hasPreviousPage: false + }, + edges: [ + { + node: { + __typename: 'CartLine', + id: 'gid://shopify/CartLine/a0e2dc6a-31e7-43da-8228-9bea1785cf52?cart=Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR', + merchandise: { + id: 'gid://shopify/ProductVariant/13666012889144' + } + } + } + ] + }, + attributes: [ + { + key: 'hey', + value: 'hi' + } + ], + cost: { + totalAmount: { + amount: '25.49', + currencyCode: 'AUD' + }, + subtotalAmount: { + amount: '25.75', + currencyCode: 'AUD' + }, + totalTaxAmount: { + amount: '2.32', + currencyCode: 'AUD' + }, + totalDutyAmount: null + }, + checkoutUrl: 'https://myshopify.com/cart/c/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR?key=40fb6cc506a25f4c6a35b784e0454185', + discountCodes: [], + buyerIdentity: { + countryCode: null, + walletPreferences: [], + email: null, + phone: null, + customer: null + } + }, + userErrors: [] + } + } +}; diff --git a/fixtures/cart-update-attrs-with-user-errors-fixture.js b/fixtures/cart-update-attrs-with-user-errors-fixture.js new file mode 100644 index 000000000..adc566e6a --- /dev/null +++ b/fixtures/cart-update-attrs-with-user-errors-fixture.js @@ -0,0 +1,20 @@ +export default { + "data": { + "checkoutAttributesUpdateV2": { + "checkoutUserErrors": [ + { + "message": "Note is too long (maximum is 5000 characters)", + "field": ['input', 'note'], + "code": "TOO_LONG" + } + ], + "userErrors": [ + { + "message": "Note is too long (maximum is 5000 characters)", + "field": ['input', 'note'] + } + ], + "checkout": null + } + } +}; diff --git a/src/cart-resource.js b/src/cart-resource.js index 2ff94680d..49ed4d15a 100644 --- a/src/cart-resource.js +++ b/src/cart-resource.js @@ -2,14 +2,28 @@ import Resource from './resource'; import defaultResolver from './default-resolver'; import handleCartMutation from './handle-cart-mutation'; +/* +- [x] cartCreate +- [x] fetch +- [x] cartAttributesUpdate + +- [ ] cartDiscountCodesUpdate +- [ ] cartLinesAdd +- [ ] cartLinesRemove +- [ ] cartLinesUpdate +- [ ] cartNoteUpdate +- [ ] cartSelectedDeliveryOptionsUpdate +*/ + // GraphQL import cartNodeQuery from './graphql/cartNodeQuery.graphql'; import cartCreateMutation from './graphql/cartCreateMutation.graphql'; +import cartAttributesUpdate from './graphql/cartAttributesUpdateMutation.graphql'; + // import checkoutLineItemsAddMutation from './graphql/checkoutLineItemsAddMutation.graphql'; // import checkoutLineItemsRemoveMutation from './graphql/checkoutLineItemsRemoveMutation.graphql'; // import checkoutLineItemsReplaceMutation from './graphql/checkoutLineItemsReplaceMutation.graphql'; // import checkoutLineItemsUpdateMutation from './graphql/checkoutLineItemsUpdateMutation.graphql'; -// import checkoutAttributesUpdateV2Mutation from './graphql/checkoutAttributesUpdateV2Mutation.graphql'; // import checkoutDiscountCodeApplyV2Mutation from './graphql/checkoutDiscountCodeApplyV2Mutation.graphql'; // import checkoutDiscountCodeRemoveMutation from './graphql/checkoutDiscountCodeRemoveMutation.graphql'; // import checkoutGiftCardsAppendMutation from './graphql/checkoutGiftCardsAppendMutation.graphql'; @@ -77,29 +91,26 @@ class CartResource extends Resource { .then(handleCartMutation('cartCreate', this.graphQLClient)); } - // /** - // * Replaces the value of checkout's custom attributes and/or note with values defined in the input - // * - // * @example - // * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; - // * const input = {customAttributes: [{key: "MyKey", value: "MyValue"}]}; - // * - // * client.checkout.updateAttributes(checkoutId, input).then((checkout) => { - // * // Do something with the updated checkout - // * }); - // * - // * @param {String} checkoutId The ID of the checkout to update. - // * @param {Object} [input] An input object containing zero or more of: - // * @param {Boolean} [input.allowPartialAddresses] An email connected to the checkout. - // * @param {Object[]} [input.customAttributes] A list of custom attributes for the checkout. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/attributeinput|Storefront API reference} for valid input fields. - // * @param {String} [input.note] A note for the checkout. - // * @return {Promise|GraphModel} A promise resolving with the updated checkout. - // */ - // updateAttributes(checkoutId, input = {}) { - // return this.graphQLClient - // .send(checkoutAttributesUpdateV2Mutation, {checkoutId, input}) - // .then(handleCheckoutMutation('checkoutAttributesUpdateV2', this.graphQLClient)); - // } + /** + * Replaces the value of a cart's custom attributes + * + * @example + * const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; + * const attributes = [{key: "MyKey", value: "MyValue"}]; + * + * client.cart.updateAttributes(cartId, attributes).then((cart) => { + * // Do something with the updated cart + * }); + * + * @param {String} cartId The ID of the cart to update. + * @param {Object[]} [attributes] A list of additional information about the cart. See the {@link https://shopify.dev/docs/api/storefront/unstable/input-objects/AttributeInput|Storefront API reference} for valid input fields. + * @return {Promise|GraphModel} A promise resolving with the updated cart. + */ + updateAttributes(cartId, attributes = []) { + return this.graphQLClient + .send(cartAttributesUpdate, {cartId, attributes}) + .then(handleCartMutation('cartAttributesUpdate', this.graphQLClient)); + } // /** // * Replaces the value of checkout's email address diff --git a/src/graphql/cartAttributesUpdateMutation.graphql b/src/graphql/cartAttributesUpdateMutation.graphql new file mode 100644 index 000000000..01c2f98fc --- /dev/null +++ b/src/graphql/cartAttributesUpdateMutation.graphql @@ -0,0 +1,11 @@ +mutation cartAttributesUpdate($attributes: [AttributeInput!]!, $cartId: ID!) { + cartAttributesUpdate(attributes: $attributes, cartId: $cartId) { + cart { + ...CartFragment + } + userErrors { + field + message + } + } +} diff --git a/test/client-cart-integration-test.js b/test/client-cart-integration-test.js index adfe39091..43d774d6a 100644 --- a/test/client-cart-integration-test.js +++ b/test/client-cart-integration-test.js @@ -8,6 +8,9 @@ import cartFixture from '../fixtures/cart-fixture'; import cartNullFixture from '../fixtures/node-null-fixture'; import cartCreateFixture from '../fixtures/cart-create-fixture'; import cartCreateInvalidVariantIdErrorFixture from '../fixtures/cart-create-invalid-variant-id-error-fixture'; +import cartUpdateAttributesFixture from '../fixtures/cart-update-attrs-fixture'; +import cartUpdateAttributesWithUserErrorsFixture from '../fixtures/cart-update-attrs-with-user-errors-fixture'; + // import checkoutCreateWithPaginatedLineItemsFixture from '../fixtures/checkout-create-with-paginated-line-items-fixture'; // import {secondPageLineItemsFixture, thirdPageLineItemsFixture} from '../fixtures/paginated-line-items-fixture'; // import checkoutLineItemsAddFixture from '../fixtures/checkout-line-items-add-fixture'; @@ -18,8 +21,6 @@ import cartCreateInvalidVariantIdErrorFixture from '../fixtures/cart-create-inva // import checkoutLineItemsRemoveWithUserErrorsFixture from '../fixtures/checkout-line-items-remove-with-user-errors-fixture'; // import checkoutLineItemsReplaceFixture from '../fixtures/checkout-line-items-replace-fixture'; // import checkoutLineItemsReplaceWithUserErrorsFixture from '../fixtures/checkout-line-items-replace-with-user-errors-fixture'; -// import checkoutUpdateAttributesV2Fixture from '../fixtures/checkout-update-custom-attrs-fixture'; -// import checkoutUpdateAttributesV2WithUserErrorsFixture from '../fixtures/checkout-update-custom-attrs-with-user-errors-fixture'; // import checkoutUpdateEmailV2Fixture from '../fixtures/checkout-update-email-fixture'; // import checkoutUpdateEmailV2WithUserErrorsFixture from '../fixtures/checkout-update-email-with-user-errors-fixture'; // import checkoutDiscountCodeApplyV2Fixture from '../fixtures/checkout-discount-code-apply-fixture'; @@ -104,11 +105,11 @@ suite('client-cart-integration-test', () => { }); }); - test('it resolve with user errors on Client.checkout#create when variantId is invalid', () => { + test('it resolve with user errors on Client.cart#create when merchandiseId is invalid', () => { const input = { lines: [ { - variantId: 'a-bad-id', + merchandiseId: 'a-bad-id', quantity: 5 } ] @@ -123,41 +124,19 @@ suite('client-cart-integration-test', () => { }); }); - // test('it resolves with a checkout on Client.checkout#updateAttributes', () => { - // const checkoutId = 'Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE='; - // const input = { - // lineItems: [ - // {variantId: 'an-id', quantity: 5} - // ], - // customAttributes: [ - // {key: 'MyKey', value: 'MyValue'} - // ] - // }; + test('it resolves with a checkout on Client.cart#updateAttributes', () => { + const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; + const attributes = [{key: 'MyKey', value: 'MyValue'}]; - // fetchMockPostOnce(fetchMock, apiUrl, checkoutUpdateAttributesV2Fixture); + fetchMockPostOnce(fetchMock, apiUrl, cartUpdateAttributesFixture); - // return client.checkout.updateAttributes(checkoutId, input).then((checkout) => { - // assert.equal(checkout.id, checkoutUpdateAttributesV2Fixture.data.checkoutAttributesUpdateV2.checkout.id); - // assert.equal(checkout.customAttributes[0].key, checkoutUpdateAttributesV2Fixture.data.checkoutAttributesUpdateV2.checkout.customAttributes[0].key); - // assert.equal(checkout.customAttributes[0].value, checkoutUpdateAttributesV2Fixture.data.checkoutAttributesUpdateV2.checkout.customAttributes[0].value); - // assert.ok(fetchMock.done()); - // }); - // }); - - // test('it resolves with user errors on Client.checkout#updateAttributes when input is invalid', () => { - // const checkoutId = checkoutUpdateAttributesV2Fixture.data.checkoutAttributesUpdateV2.checkout.id; - // const input = { - // note: 'Very long note' - // }; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutUpdateAttributesV2WithUserErrorsFixture); - - // return client.checkout.updateAttributes(checkoutId, input).then(() => { - // assert.ok(false, 'Promise should not resolve'); - // }).catch((error) => { - // assert.equal(error.message, '[{"message":"Note is too long (maximum is 5000 characters)","field":["input","note"],"code":"TOO_LONG"}]'); - // }); - // }); + return client.cart.updateAttributes(cartId, attributes).then((cart) => { + assert.equal(cart.id, cartUpdateAttributesFixture.data.cartAttributesUpdate.cart.id); + assert.equal(cart.attributes[0].key, cartUpdateAttributesFixture.data.cartAttributesUpdate.cart.attributes[0].key); + assert.equal(cart.attributes[0].value, cartUpdateAttributesFixture.data.cartAttributesUpdate.cart.attributes[0].value); + assert.ok(fetchMock.done()); + }); + }); // test('it resolves with a checkout on Client.checkout#updateEmail', () => { // const checkoutId = 'Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE='; From ccbba739ca7d260a48c2757d03768325eda6e459 Mon Sep 17 00:00:00 2001 From: Scott Dixon Date: Thu, 8 Feb 2024 08:25:04 +1000 Subject: [PATCH 04/19] cart.updateBuyerIdentity --- src/cart-resource.js | 23 +++++++++++++++++++-- src/graphql/cartBuyerIdentityUpdate.graphql | 14 +++++++++++++ 2 files changed, 35 insertions(+), 2 deletions(-) create mode 100644 src/graphql/cartBuyerIdentityUpdate.graphql diff --git a/src/cart-resource.js b/src/cart-resource.js index 49ed4d15a..4e24659dd 100644 --- a/src/cart-resource.js +++ b/src/cart-resource.js @@ -6,8 +6,9 @@ import handleCartMutation from './handle-cart-mutation'; - [x] cartCreate - [x] fetch - [x] cartAttributesUpdate +- [x] cartBuyerIdentityUpdate +- [x] cartDiscountCodesUpdate -- [ ] cartDiscountCodesUpdate - [ ] cartLinesAdd - [ ] cartLinesRemove - [ ] cartLinesUpdate @@ -19,6 +20,7 @@ import handleCartMutation from './handle-cart-mutation'; import cartNodeQuery from './graphql/cartNodeQuery.graphql'; import cartCreateMutation from './graphql/cartCreateMutation.graphql'; import cartAttributesUpdate from './graphql/cartAttributesUpdateMutation.graphql'; +import cartBuyerIdentityUpdate from './graphql/cartBuyerIdentityUpdate.graphql'; // import checkoutLineItemsAddMutation from './graphql/checkoutLineItemsAddMutation.graphql'; // import checkoutLineItemsRemoveMutation from './graphql/checkoutLineItemsRemoveMutation.graphql'; @@ -28,7 +30,6 @@ import cartAttributesUpdate from './graphql/cartAttributesUpdateMutation.graphql // import checkoutDiscountCodeRemoveMutation from './graphql/checkoutDiscountCodeRemoveMutation.graphql'; // import checkoutGiftCardsAppendMutation from './graphql/checkoutGiftCardsAppendMutation.graphql'; // import checkoutGiftCardRemoveV2Mutation from './graphql/checkoutGiftCardRemoveV2Mutation.graphql'; -// import checkoutEmailUpdateV2Mutation from './graphql/checkoutEmailUpdateV2Mutation.graphql'; // import checkoutShippingAddressUpdateV2Mutation from './graphql/checkoutShippingAddressUpdateV2Mutation.graphql'; /** @@ -112,6 +113,24 @@ class CartResource extends Resource { .then(handleCartMutation('cartAttributesUpdate', this.graphQLClient)); } + /** + * Replaces the value of a cart's buyer identity + * @example + * const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; + * const buyerIdentity = {email: "hello@hi.com"}; + * client.cart.updateBuyerIdentity(cartId, buyerIdentity).then((cart) => { + * // Do something with the updated cart + * }); + * @param {String} cartId The ID of the cart to update. + * @param {Object} [buyerIdentity] A list of additional information about the cart. See the {@link https://shopify.dev/docs/api/storefront/unstable/input-objects/AttributeInput|Storefront API reference} for valid input fields. + * @return {Promise|GraphModel} A promise resolving with the updated cart. + * */ + updateBuyerIdentity(cartId, buyerIdentity = {}) { + return this.graphQLClient + .send(cartBuyerIdentityUpdate, {cartId, buyerIdentity}) + .then(handleCartMutation('cartBuyerIdentityUpdate', this.graphQLClient)); + } + // /** // * Replaces the value of checkout's email address // * diff --git a/src/graphql/cartBuyerIdentityUpdate.graphql b/src/graphql/cartBuyerIdentityUpdate.graphql new file mode 100644 index 000000000..dd779841a --- /dev/null +++ b/src/graphql/cartBuyerIdentityUpdate.graphql @@ -0,0 +1,14 @@ +mutation cartBuyerIdentityUpdate( + $buyerIdentity: CartBuyerIdentityInput! + $cartId: ID! +) { + cartBuyerIdentityUpdate(buyerIdentity: $buyerIdentity, cartId: $cartId) { + cart { + ...CartFragment + } + userErrors { + field + message + } + } +} From 79e60b2b690440e96213798048e1f6ddd93ddd35 Mon Sep 17 00:00:00 2001 From: Scott Dixon Date: Thu, 8 Feb 2024 08:43:19 +1000 Subject: [PATCH 05/19] cart.updateDiscountCodes --- src/cart-resource.js | 241 ++------------------ src/graphql/cartDiscountCodesUpdate.graphql | 11 + 2 files changed, 29 insertions(+), 223 deletions(-) create mode 100644 src/graphql/cartDiscountCodesUpdate.graphql diff --git a/src/cart-resource.js b/src/cart-resource.js index 4e24659dd..d5a9b5f0b 100644 --- a/src/cart-resource.js +++ b/src/cart-resource.js @@ -21,12 +21,12 @@ import cartNodeQuery from './graphql/cartNodeQuery.graphql'; import cartCreateMutation from './graphql/cartCreateMutation.graphql'; import cartAttributesUpdate from './graphql/cartAttributesUpdateMutation.graphql'; import cartBuyerIdentityUpdate from './graphql/cartBuyerIdentityUpdate.graphql'; +import cartDiscountCodesUpdate from './graphql/cartDiscountCodesUpdate.graphql'; // import checkoutLineItemsAddMutation from './graphql/checkoutLineItemsAddMutation.graphql'; // import checkoutLineItemsRemoveMutation from './graphql/checkoutLineItemsRemoveMutation.graphql'; // import checkoutLineItemsReplaceMutation from './graphql/checkoutLineItemsReplaceMutation.graphql'; // import checkoutLineItemsUpdateMutation from './graphql/checkoutLineItemsUpdateMutation.graphql'; -// import checkoutDiscountCodeApplyV2Mutation from './graphql/checkoutDiscountCodeApplyV2Mutation.graphql'; // import checkoutDiscountCodeRemoveMutation from './graphql/checkoutDiscountCodeRemoveMutation.graphql'; // import checkoutGiftCardsAppendMutation from './graphql/checkoutGiftCardsAppendMutation.graphql'; // import checkoutGiftCardRemoveV2Mutation from './graphql/checkoutGiftCardRemoveV2Mutation.graphql'; @@ -131,230 +131,25 @@ class CartResource extends Resource { .then(handleCartMutation('cartBuyerIdentityUpdate', this.graphQLClient)); } - // /** - // * Replaces the value of checkout's email address - // * - // * @example - // * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; - // * const email = 'user@example.com'; - // * - // * client.checkout.updateEmail(checkoutId, email).then((checkout) => { - // * // Do something with the updated checkout - // * }); - // * - // * @param {String} checkoutId The ID of the checkout to update. - // * @param {String} email The email address to apply to the checkout. - // * @return {Promise|GraphModel} A promise resolving with the updated checkout. - // */ - // updateEmail(checkoutId, email) { - // return this.graphQLClient - // .send(checkoutEmailUpdateV2Mutation, {checkoutId, email}) - // .then(handleCheckoutMutation('checkoutEmailUpdateV2', this.graphQLClient)); - // } - - // /** - // * Adds line items to an existing checkout. - // * - // * @example - // * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; - // * const lineItems = [{variantId: 'Z2lkOi8vc2hvcGlmeS9Qcm9kdWN0VmFyaWFudC8yOTEwNjAyMjc5Mg==', quantity: 5}]; - // * - // * client.checkout.addLineItems(checkoutId, lineItems).then((checkout) => { - // * // Do something with the updated checkout - // * }); - // * - // * @param {String} checkoutId The ID of the checkout to add line items to. - // * @param {Object[]} lineItems A list of line items to add to the checkout. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/checkoutlineiteminput|Storefront API reference} for valid input fields for each line item. - // * @return {Promise|GraphModel} A promise resolving with the updated checkout. - // */ - // addLineItems(checkoutId, lineItems) { - // return this.graphQLClient - // .send(checkoutLineItemsAddMutation, {checkoutId, lineItems}) - // .then(handleCheckoutMutation('checkoutLineItemsAdd', this.graphQLClient)); - // } - - // /** - // * Applies a discount to an existing checkout using a discount code. - // * - // * @example - // * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; - // * const discountCode = 'best-discount-ever'; - // * - // * client.checkout.addDiscount(checkoutId, discountCode).then((checkout) => { - // * // Do something with the updated checkout - // * }); - // * - // * @param {String} checkoutId The ID of the checkout to add discount to. - // * @param {String} discountCode The discount code to apply to the checkout. - // * @return {Promise|GraphModel} A promise resolving with the updated checkout. - // */ - // addDiscount(checkoutId, discountCode) { - // return this.graphQLClient - // .send(checkoutDiscountCodeApplyV2Mutation, {checkoutId, discountCode}) - // .then(handleCheckoutMutation('checkoutDiscountCodeApplyV2', this.graphQLClient)); - // } - - // /** - // * Removes the applied discount from an existing checkout. - // * - // * @example - // * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; - // * - // * client.checkout.removeDiscount(checkoutId).then((checkout) => { - // * // Do something with the updated checkout - // * }); - // * - // * @param {String} checkoutId The ID of the checkout to remove the discount from. - // * @return {Promise|GraphModel} A promise resolving with the updated checkout. - // */ - // removeDiscount(checkoutId) { - // return this.graphQLClient - // .send(checkoutDiscountCodeRemoveMutation, {checkoutId}) - // .then(handleCheckoutMutation('checkoutDiscountCodeRemove', this.graphQLClient)); - // } - - // /** - // * Applies gift cards to an existing checkout using a list of gift card codes - // * - // * @example - // * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; - // * const giftCardCodes = ['6FD8853DAGAA949F']; - // * - // * client.checkout.addGiftCards(checkoutId, giftCardCodes).then((checkout) => { - // * // Do something with the updated checkout - // * }); - // * - // * @param {String} checkoutId The ID of the checkout to add gift cards to. - // * @param {String[]} giftCardCodes The gift card codes to apply to the checkout. - // * @return {Promise|GraphModel} A promise resolving with the updated checkout. - // */ - // addGiftCards(checkoutId, giftCardCodes) { - // return this.graphQLClient - // .send(checkoutGiftCardsAppendMutation, {checkoutId, giftCardCodes}) - // .then(handleCheckoutMutation('checkoutGiftCardsAppend', this.graphQLClient)); - // } - - // /** - // * Remove a gift card from an existing checkout - // * - // * @example - // * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; - // * const appliedGiftCardId = 'Z2lkOi8vc2hvcGlmeS9BcHBsaWVkR2lmdENhcmQvNDI4NTQ1ODAzMTI='; - // * - // * client.checkout.removeGiftCard(checkoutId, appliedGiftCardId).then((checkout) => { - // * // Do something with the updated checkout - // * }); - // * - // * @param {String} checkoutId The ID of the checkout to add gift cards to. - // * @param {String} appliedGiftCardId The gift card id to remove from the checkout. - // * @return {Promise|GraphModel} A promise resolving with the updated checkout. - // */ - // removeGiftCard(checkoutId, appliedGiftCardId) { - // return this.graphQLClient - // .send(checkoutGiftCardRemoveV2Mutation, {checkoutId, appliedGiftCardId}) - // .then(handleCheckoutMutation('checkoutGiftCardRemoveV2', this.graphQLClient)); - // } - - // /** - // * Removes line items from an existing checkout. - // * - // * @example - // * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; - // * const lineItemIds = ['TViZGE5Y2U1ZDFhY2FiMmM2YT9rZXk9NTc2YjBhODcwNWIxYzg0YjE5ZjRmZGQ5NjczNGVkZGU=']; - // * - // * client.checkout.removeLineItems(checkoutId, lineItemIds).then((checkout) => { - // * // Do something with the updated checkout - // * }); - // * - // * @param {String} checkoutId The ID of the checkout to remove line items from. - // * @param {String[]} lineItemIds A list of the ids of line items to remove from the checkout. - // * @return {Promise|GraphModel} A promise resolving with the updated checkout. - // */ - // removeLineItems(checkoutId, lineItemIds) { - // return this.graphQLClient - // .send(checkoutLineItemsRemoveMutation, {checkoutId, lineItemIds}) - // .then(handleCheckoutMutation('checkoutLineItemsRemove', this.graphQLClient)); - // } - - // /** - // * Replace line items on an existing checkout. - // * - // * @example - // * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; - // * const lineItems = [{variantId: 'Z2lkOi8vc2hvcGlmeS9Qcm9kdWN0VmFyaWFudC8yOTEwNjAyMjc5Mg==', quantity: 5}]; - // * - // * client.checkout.replaceLineItems(checkoutId, lineItems).then((checkout) => { - // * // Do something with the updated checkout - // * }); - // * - // * @param {String} checkoutId The ID of the checkout to add line items to. - // * @param {Object[]} lineItems A list of line items to set on the checkout. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/checkoutlineiteminput|Storefront API reference} for valid input fields for each line item. - // * @return {Promise|GraphModel} A promise resolving with the updated checkout. - // */ - // replaceLineItems(checkoutId, lineItems) { - // return this.graphQLClient - // .send(checkoutLineItemsReplaceMutation, {checkoutId, lineItems}) - // .then(handleCheckoutMutation('checkoutLineItemsReplace', this.graphQLClient)); - // } + /** + * Replaces the value of a cart's discount codes + * @example + * const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; + * const discountCodes = [{code: "MyCode"}]; + * client.cart.updateDiscountCodes(cartId, discountCodes).then((cart) => { + * // Do something with the updated cart + * }); + * @param {String} cartId The ID of the cart to update. + * @param {Object[]} [discountCodes] A list of additional information about the cart. See the {@link https://shopify.dev/docs/api/storefront/unstable/input-objects/AttributeInput|Storefront API reference} for valid input fields. + * @return {Promise|GraphModel} A promise resolving with the updated cart. + * */ + updateDiscountCodes(cartId, discountCodes = []) { + return this.graphQLClient + .send(cartDiscountCodesUpdate, {cartId, discountCodes}) + .then(handleCartMutation('cartDiscountCodesUpdate', this.graphQLClient)); + } - // /** - // * Updates line items on an existing checkout. - // * - // * @example - // * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; - // * const lineItems = [ - // * { - // * id: 'TViZGE5Y2U1ZDFhY2FiMmM2YT9rZXk9NTc2YjBhODcwNWIxYzg0YjE5ZjRmZGQ5NjczNGVkZGU=', - // * quantity: 5, - // * variantId: 'Z2lkOi8vc2hvcGlmeS9Qcm9kdWN0VmFyaWFudC8yOTEwNjAyMjc5Mg==' - // * } - // * ]; - // * - // * client.checkout.updateLineItems(checkoutId, lineItems).then(checkout => { - // * // Do something with the updated checkout - // * }); - // * - // * @param {String} checkoutId The ID of the checkout to update a line item on. - // * @param {Object[]} lineItems A list of line item information to update. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/checkoutlineitemupdateinput|Storefront API reference} for valid input fields for each line item. - // * @return {Promise|GraphModel} A promise resolving with the updated checkout. - // */ - // updateLineItems(checkoutId, lineItems) { - // return this.graphQLClient - // .send(checkoutLineItemsUpdateMutation, {checkoutId, lineItems}) - // .then(handleCheckoutMutation('checkoutLineItemsUpdate', this.graphQLClient)); - // } - // /** - // * Updates shipping address on an existing checkout. - // * - // * @example - // * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; - // * const shippingAddress = { - // * address1: 'Chestnut Street 92', - // * address2: 'Apartment 2', - // * city: 'Louisville', - // * company: null, - // * country: 'United States', - // * firstName: 'Bob', - // * lastName: 'Norman', - // * phone: '555-625-1199', - // * province: 'Kentucky', - // * zip: '40202' - // * }; - // * - // * client.checkout.updateShippingAddress(checkoutId, shippingAddress).then(checkout => { - // * // Do something with the updated checkout - // * }); - // * - // * @param {String} checkoutId The ID of the checkout to update shipping address. - // * @param {Object} shippingAddress A shipping address. - // * @return {Promise|GraphModel} A promise resolving with the updated checkout. - // */ - // updateShippingAddress(checkoutId, shippingAddress) { - // return this.graphQLClient - // .send(checkoutShippingAddressUpdateV2Mutation, {checkoutId, shippingAddress}) - // .then(handleCheckoutMutation('checkoutShippingAddressUpdateV2', this.graphQLClient)); - // } } export default CartResource; diff --git a/src/graphql/cartDiscountCodesUpdate.graphql b/src/graphql/cartDiscountCodesUpdate.graphql new file mode 100644 index 000000000..20782f7eb --- /dev/null +++ b/src/graphql/cartDiscountCodesUpdate.graphql @@ -0,0 +1,11 @@ +mutation cartDiscountCodesUpdate($cartId: ID!, $discountCodes: [String!]!) { + cartDiscountCodesUpdate(cartId: $cartId, discountCodes: $discountCodes) { + cart { + ...CartFragment + } + userErrors { + field + message + } + } +} From 70d0ba326441a59fd74971b9bfeb0e50be1d5105 Mon Sep 17 00:00:00 2001 From: Scott Dixon Date: Thu, 8 Feb 2024 11:01:15 +1000 Subject: [PATCH 06/19] cart.addLineItems, cart.removeLineItems, cart.updateLineItems --- src/cart-resource.js | 74 ++++++++++++++++--- src/graphql/CartFragment.graphql | 56 ++++++++++++++ ...> cartBuyerIdentityUpdateMutation.graphql} | 0 ...> cartDiscountCodesUpdateMutation.graphql} | 0 src/graphql/cartLinesAddMutation.graphql | 11 +++ src/graphql/cartLinesRemoveMutation.graphql | 11 +++ src/graphql/cartLinesUpdateMutation.graphql | 11 +++ 7 files changed, 154 insertions(+), 9 deletions(-) rename src/graphql/{cartBuyerIdentityUpdate.graphql => cartBuyerIdentityUpdateMutation.graphql} (100%) rename src/graphql/{cartDiscountCodesUpdate.graphql => cartDiscountCodesUpdateMutation.graphql} (100%) create mode 100644 src/graphql/cartLinesAddMutation.graphql create mode 100644 src/graphql/cartLinesRemoveMutation.graphql create mode 100644 src/graphql/cartLinesUpdateMutation.graphql diff --git a/src/cart-resource.js b/src/cart-resource.js index d5a9b5f0b..f372fb348 100644 --- a/src/cart-resource.js +++ b/src/cart-resource.js @@ -8,10 +8,10 @@ import handleCartMutation from './handle-cart-mutation'; - [x] cartAttributesUpdate - [x] cartBuyerIdentityUpdate - [x] cartDiscountCodesUpdate +- [x] cartLinesAdd +- [x] cartLinesRemove +- [x] cartLinesUpdate -- [ ] cartLinesAdd -- [ ] cartLinesRemove -- [ ] cartLinesUpdate - [ ] cartNoteUpdate - [ ] cartSelectedDeliveryOptionsUpdate */ @@ -19,9 +19,12 @@ import handleCartMutation from './handle-cart-mutation'; // GraphQL import cartNodeQuery from './graphql/cartNodeQuery.graphql'; import cartCreateMutation from './graphql/cartCreateMutation.graphql'; -import cartAttributesUpdate from './graphql/cartAttributesUpdateMutation.graphql'; -import cartBuyerIdentityUpdate from './graphql/cartBuyerIdentityUpdate.graphql'; -import cartDiscountCodesUpdate from './graphql/cartDiscountCodesUpdate.graphql'; +import cartAttributesUpdateMutation from './graphql/cartAttributesUpdateMutation.graphql'; +import cartBuyerIdentityUpdateMutation from './graphql/cartBuyerIdentityUpdateMutation.graphql'; +import cartDiscountCodesUpdateMutation from './graphql/cartDiscountCodesUpdateMutation.graphql'; +import cartLinesAddMutation from './graphql/cartLinesAddMutation.graphql'; +import cartLinesRemoveMutation from './graphql/cartLinesRemoveMutation.graphql'; +import cartLinesUpdateMutation from './graphql/cartLinesUpdateMutation.graphql'; // import checkoutLineItemsAddMutation from './graphql/checkoutLineItemsAddMutation.graphql'; // import checkoutLineItemsRemoveMutation from './graphql/checkoutLineItemsRemoveMutation.graphql'; @@ -109,7 +112,7 @@ class CartResource extends Resource { */ updateAttributes(cartId, attributes = []) { return this.graphQLClient - .send(cartAttributesUpdate, {cartId, attributes}) + .send(cartAttributesUpdateMutation, {cartId, attributes}) .then(handleCartMutation('cartAttributesUpdate', this.graphQLClient)); } @@ -127,7 +130,7 @@ class CartResource extends Resource { * */ updateBuyerIdentity(cartId, buyerIdentity = {}) { return this.graphQLClient - .send(cartBuyerIdentityUpdate, {cartId, buyerIdentity}) + .send(cartBuyerIdentityUpdateMutation, {cartId, buyerIdentity}) .then(handleCartMutation('cartBuyerIdentityUpdate', this.graphQLClient)); } @@ -145,11 +148,64 @@ class CartResource extends Resource { * */ updateDiscountCodes(cartId, discountCodes = []) { return this.graphQLClient - .send(cartDiscountCodesUpdate, {cartId, discountCodes}) + .send(cartDiscountCodesUpdateMutation, {cartId, discountCodes}) .then(handleCartMutation('cartDiscountCodesUpdate', this.graphQLClient)); } + /** + * Adds line items to a cart + * @example + * const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; + * const lines = [{merchandiseId: 'gid://shopify/Product/123456', quantity: 5}]; + * client.cart.addLineItems(cartId, lines).then((cart) => { + * // Do something with the updated cart + * }); + * @param {String} cartId The ID of the cart to update. + * @param {Object[]} [lines] A list of merchandise lines to add to the cart. + * @return {Promise|GraphModel} A promise resolving with the updated cart. + * */ + addLineItems(cartId, lines = []) { + return this.graphQLClient + .send(cartLinesAddMutation, {cartId, lines}) + .then(handleCartMutation('cartLinesAdd', this.graphQLClient)); + } + + /** + * Removes line items from a cart + * @example + * const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; + * const lineIds = ['gid://shopify/CartLineItem/123456']; + * client.cart.removeLineItems(cartId, lineIds).then((cart) => { + * // Do something with the updated cart + * }); + * @param {String} cartId The ID of the cart to update. + * @param {String[]} [lineIds] A list of merchandise lines to remove from the cart. + * @return {Promise|GraphModel} A promise resolving with the updated cart. + * + */ + removeLineItems(cartId, lineIds = []) { + return this.graphQLClient + .send(cartLinesRemoveMutation, {cartId, lineIds}) + .then(handleCartMutation('cartLinesRemove', this.graphQLClient)); + } + /** + * Updates line items in a cart + * @example + * const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; + * const lines = [{id: 'gid://shopify/CartLineItem/123456', quantity: 5}]; + * client.cart.updateLineItems(cartId, lines).then((cart) => { + * // Do something with the updated cart + * }); + * @param {String} cartId The ID of the cart to update. + * @param {Object[]} [lines] A list of merchandise lines to update in the cart. + * @return {Promise|GraphModel} A promise resolving with the updated cart. + * */ + updateLineItems(cartId, lines = []) { + return this.graphQLClient + .send(cartLinesUpdateMutation, {cartId, lines}) + .then(handleCartMutation('cartLinesUpdate', this.graphQLClient)); + } } export default CartResource; diff --git a/src/graphql/CartFragment.graphql b/src/graphql/CartFragment.graphql index 4e25f8c20..691ad7904 100644 --- a/src/graphql/CartFragment.graphql +++ b/src/graphql/CartFragment.graphql @@ -15,6 +15,62 @@ fragment CartFragment on Cart { id } } + quantity + attributes { + key + value + } + cost { + totalAmount { + amount + currencyCode + } + subtotalAmount { + amount + currencyCode + } + amountPerQuantity { + amount + currencyCode + } + compareAtAmountPerQuantity { + amount + currencyCode + } + } + discountAllocations { + discountedAmount { + amount + currencyCode + } + } + sellingPlanAllocation { + checkoutChargeAmount { + amount + currencyCode + } + sellingPlan { + id + } + priceAdjustments { + compareAtPrice { + amount + currencyCode + } + perDeliveryPrice { + amount + currencyCode + } + price { + amount + currencyCode + } + unitPrice { + amount + currencyCode + } + } + } } } } diff --git a/src/graphql/cartBuyerIdentityUpdate.graphql b/src/graphql/cartBuyerIdentityUpdateMutation.graphql similarity index 100% rename from src/graphql/cartBuyerIdentityUpdate.graphql rename to src/graphql/cartBuyerIdentityUpdateMutation.graphql diff --git a/src/graphql/cartDiscountCodesUpdate.graphql b/src/graphql/cartDiscountCodesUpdateMutation.graphql similarity index 100% rename from src/graphql/cartDiscountCodesUpdate.graphql rename to src/graphql/cartDiscountCodesUpdateMutation.graphql diff --git a/src/graphql/cartLinesAddMutation.graphql b/src/graphql/cartLinesAddMutation.graphql new file mode 100644 index 000000000..3e3a8d019 --- /dev/null +++ b/src/graphql/cartLinesAddMutation.graphql @@ -0,0 +1,11 @@ +mutation cartLinesAdd($cartId: ID!, $lines: [CartLineInput!]!) { + cartLinesAdd(cartId: $cartId, lines: $lines) { + cart { + ...CartFragment + } + userErrors { + field + message + } + } +} diff --git a/src/graphql/cartLinesRemoveMutation.graphql b/src/graphql/cartLinesRemoveMutation.graphql new file mode 100644 index 000000000..1fd499cd5 --- /dev/null +++ b/src/graphql/cartLinesRemoveMutation.graphql @@ -0,0 +1,11 @@ +mutation cartLinesRemove($cartId: ID!, $lineIds: [ID!]!) { + cartLinesRemove(cartId: $cartId, lineIds: $lineIds) { + cart { + ...CartFragment + } + userErrors { + field + message + } + } +} diff --git a/src/graphql/cartLinesUpdateMutation.graphql b/src/graphql/cartLinesUpdateMutation.graphql new file mode 100644 index 000000000..1f18c4eb8 --- /dev/null +++ b/src/graphql/cartLinesUpdateMutation.graphql @@ -0,0 +1,11 @@ +mutation cartLinesUpdate($cartId: ID!, $lines: [CartLineUpdateInput!]!) { + cartLinesUpdate(cartId: $cartId, lines: $lines) { + cart { + ...CartFragment + } + userErrors { + field + message + } + } +} From ca96b0bf0ec2d388522d54f01ffabd836fc1bc17 Mon Sep 17 00:00:00 2001 From: Scott Dixon Date: Thu, 8 Feb 2024 11:16:14 +1000 Subject: [PATCH 07/19] Query all available cart fields --- src/graphql/CartFragment.graphql | 127 ++++++++++++++------------- src/graphql/CartLineFragment.graphql | 64 ++++++++++++++ 2 files changed, 129 insertions(+), 62 deletions(-) create mode 100644 src/graphql/CartLineFragment.graphql diff --git a/src/graphql/CartFragment.graphql b/src/graphql/CartFragment.graphql index 691ad7904..a3f9ce1bb 100644 --- a/src/graphql/CartFragment.graphql +++ b/src/graphql/CartFragment.graphql @@ -9,68 +9,7 @@ fragment CartFragment on Cart { } edges { node { - id - merchandise { - ... on ProductVariant { - id - } - } - quantity - attributes { - key - value - } - cost { - totalAmount { - amount - currencyCode - } - subtotalAmount { - amount - currencyCode - } - amountPerQuantity { - amount - currencyCode - } - compareAtAmountPerQuantity { - amount - currencyCode - } - } - discountAllocations { - discountedAmount { - amount - currencyCode - } - } - sellingPlanAllocation { - checkoutChargeAmount { - amount - currencyCode - } - sellingPlan { - id - } - priceAdjustments { - compareAtPrice { - amount - currencyCode - } - perDeliveryPrice { - amount - currencyCode - } - price { - amount - currencyCode - } - unitPrice { - amount - currencyCode - } - } - } + ...CartLineFragment } } } @@ -110,4 +49,68 @@ fragment CartFragment on Cart { email } } + deliveryGroups(first: 10) { + pageInfo { + hasNextPage + hasPreviousPage + } + edges { + node { + deliveryAddress { + address1 + address2 + city + company + country + countryCodeV2 + firstName + formatted + formattedArea + id + lastName + latitude + longitude + name + phone + province + provinceCode + zip + } + deliveryOptions { + code + deliveryMethodType + description + estimatedCost { + amount + currencyCode + } + handle + title + } + id + selectedDeliveryOption { + code + deliveryMethodType + description + estimatedCost { + amount + currencyCode + } + handle + title + } + cartLines(first: 10) { + pageInfo { + hasNextPage + hasPreviousPage + } + edges { + node { + ...CartLineFragment + } + } + } + } + } + } } diff --git a/src/graphql/CartLineFragment.graphql b/src/graphql/CartLineFragment.graphql new file mode 100644 index 000000000..8e5ed5fa8 --- /dev/null +++ b/src/graphql/CartLineFragment.graphql @@ -0,0 +1,64 @@ +fragment CartLineFragment on CartLine { + id + merchandise { + ... on ProductVariant { + id + } + } + quantity + attributes { + key + value + } + cost { + totalAmount { + amount + currencyCode + } + subtotalAmount { + amount + currencyCode + } + amountPerQuantity { + amount + currencyCode + } + compareAtAmountPerQuantity { + amount + currencyCode + } + } + discountAllocations { + discountedAmount { + amount + currencyCode + } + } + sellingPlanAllocation { + checkoutChargeAmount { + amount + currencyCode + } + sellingPlan { + id + } + priceAdjustments { + compareAtPrice { + amount + currencyCode + } + perDeliveryPrice { + amount + currencyCode + } + price { + amount + currencyCode + } + unitPrice { + amount + currencyCode + } + } + } +} From 88db3796bd821fde5e731413581f126f8ef29d02 Mon Sep 17 00:00:00 2001 From: Scott Dixon Date: Thu, 8 Feb 2024 11:57:29 +1000 Subject: [PATCH 08/19] cart.updateNote --- src/cart-resource.js | 24 +++++++++++++++++++++- src/graphql/CartFragment.graphql | 1 + src/graphql/cartNoteUpdateMutation.graphql | 11 ++++++++++ 3 files changed, 35 insertions(+), 1 deletion(-) create mode 100644 src/graphql/cartNoteUpdateMutation.graphql diff --git a/src/cart-resource.js b/src/cart-resource.js index f372fb348..c7940adf3 100644 --- a/src/cart-resource.js +++ b/src/cart-resource.js @@ -11,8 +11,8 @@ import handleCartMutation from './handle-cart-mutation'; - [x] cartLinesAdd - [x] cartLinesRemove - [x] cartLinesUpdate +- [x] cartNoteUpdate -- [ ] cartNoteUpdate - [ ] cartSelectedDeliveryOptionsUpdate */ @@ -25,6 +25,7 @@ import cartDiscountCodesUpdateMutation from './graphql/cartDiscountCodesUpdateMu import cartLinesAddMutation from './graphql/cartLinesAddMutation.graphql'; import cartLinesRemoveMutation from './graphql/cartLinesRemoveMutation.graphql'; import cartLinesUpdateMutation from './graphql/cartLinesUpdateMutation.graphql'; +import cartNoteUpdateMutation from './graphql/cartNoteUpdateMutation.graphql'; // import checkoutLineItemsAddMutation from './graphql/checkoutLineItemsAddMutation.graphql'; // import checkoutLineItemsRemoveMutation from './graphql/checkoutLineItemsRemoveMutation.graphql'; @@ -206,6 +207,27 @@ class CartResource extends Resource { .send(cartLinesUpdateMutation, {cartId, lines}) .then(handleCartMutation('cartLinesUpdate', this.graphQLClient)); } + + /** + * Updates the note on a cart + * @example + * const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; + * const note = 'A note for the cart'; + * client.cart.updateNote(cartId, note).then((cart) => { + * // Do something with the updated cart + * } + * @param {String} cartId The ID of the cart to update. + * @param {String} [note] A note for the cart. + * @return {Promise|GraphModel} A promise resolving with the updated cart. + * */ + updateNote(cartId, note) { + return this.graphQLClient + .send(cartNoteUpdateMutation, {cartId, note}) + .then(handleCartMutation('cartNoteUpdate', this.graphQLClient)); + } + + + } export default CartResource; diff --git a/src/graphql/CartFragment.graphql b/src/graphql/CartFragment.graphql index a3f9ce1bb..4e8d8a468 100644 --- a/src/graphql/CartFragment.graphql +++ b/src/graphql/CartFragment.graphql @@ -113,4 +113,5 @@ fragment CartFragment on Cart { } } } + note } diff --git a/src/graphql/cartNoteUpdateMutation.graphql b/src/graphql/cartNoteUpdateMutation.graphql new file mode 100644 index 000000000..cb1a19d0f --- /dev/null +++ b/src/graphql/cartNoteUpdateMutation.graphql @@ -0,0 +1,11 @@ +mutation cartNoteUpdate($cartId: ID!, $note: String!) { + cartNoteUpdate(cartId: $cartId, note: $note) { + cart { + ...CartFragment + } + userErrors { + field + message + } + } +} From 7f092452347036a6121400b3e1dbf364b67a6be8 Mon Sep 17 00:00:00 2001 From: Scott Dixon Date: Thu, 8 Feb 2024 13:38:37 +1000 Subject: [PATCH 09/19] cart.updateSelectedDeliveryOptions and readme updates --- README.md | 87 ++++++++++++++++++- src/cart-resource.js | 84 +++++++++++------- src/graphql/CartFragment.graphql | 22 ++++- ...ectedDeliveryOptionsUpdateMutation.graphql | 17 ++++ 4 files changed, 175 insertions(+), 35 deletions(-) create mode 100644 src/graphql/cartSelectedDeliveryOptionsUpdateMutation.graphql diff --git a/README.md b/README.md index ec77baf68..c51cac870 100644 --- a/README.md +++ b/README.md @@ -164,6 +164,8 @@ client.collection.fetchWithProducts(collectionId, {productsFirst: 10}).then((col }); ``` +## Carts + ### Creating a Cart ```javascript const input = { @@ -178,7 +180,6 @@ const input = { // Create a cart client.cart.create(input).then((cart) => { // Do something with the cart - console.log(cart); }); ``` @@ -188,7 +189,6 @@ const cartId = 'gid://shopify/Cart/Z2NwLWV1cm9wZS13ZXN0NDowMUhOTTI0QVZYV1NOSEVNO client.cart.fetch(cartId).then((cart) => { // Do something with the cart - console.log(cart); }); ``` @@ -202,6 +202,89 @@ client.cart.updateAttributes(cartId, attributes).then((cart) => { }); ``` +### Updating Cart Buyer Identity +```javascript +const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; +const buyerIdentity = {email: "hello@hi.com"}; + +client.cart.updateBuyerIdentity(cartId, buyerIdentity).then((cart) => { + // Do something with the updated cart +}); +``` + +### Updating Cart Discount Codes +```javascript +const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; +const discountCodes = [{code: "MyCode"}]; + +client.cart.updateDiscountCodes(cartId, discountCodes).then((cart) => { + // Do something with the updated cart +}); +``` + +### Adding Cart Line Items +```javascript +const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; +const lines = [{merchandiseId: 'gid://shopify/Product/123456', quantity: 5}]; + +client.cart.addLineItems(cartId, lines).then((cart) => { + // Do something with the updated cart +}); +``` + +### Removing Cart Line Items +```javascript +const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; +const lineIdsToRemove = ['gid://shopify/CartLineItem/123456']; + +client.cart.addLineItems(cartId, lineIdsToRemove).then((cart) => { + // Do something with the updated cart +}); +``` + +### Updating Cart Line Items +```javascript +const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; +const lines = [{id: 'gid://shopify/CartLineItem/123456', quantity: 5}]; + +client.cart.updateLineItems(cartId, lines).then((cart) => { + // Do something with the updated cart +}); +``` + +### Updating Cart Notes +```javascript +const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; +const note = 'A note for the cart'; + +client.cart.updateNote(cartId, note).then((cart) => { + // Do something with the updated cart +} +``` + +### Updating Cart Selected Delivery Options +```javascript +const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; +const selectedDeliveryOptions = [ + { + deliveryGroupId: '', + deliveryOptionHandle: '' + } +]; + +client.cart.updateSelectedDeliveryOptions(cartId, selectedDeliveryOptions).then((cart) => { + // Do something with the updated cart +} +``` + +### Complete the checkout + +To complete the checkout, redirect customers to the `checkoutUrl` property attached to the cart. This URL points to Shopify's checkout to complete the purchase. + +## Checkouts + +Note: [It's recommended to use Cart instead of Checkout](https://github.com/Shopify/storefront-api-feedback/discussions/225). + ### Creating a Checkout ```javascript // Create an empty checkout diff --git a/src/cart-resource.js b/src/cart-resource.js index c7940adf3..343408984 100644 --- a/src/cart-resource.js +++ b/src/cart-resource.js @@ -2,20 +2,6 @@ import Resource from './resource'; import defaultResolver from './default-resolver'; import handleCartMutation from './handle-cart-mutation'; -/* -- [x] cartCreate -- [x] fetch -- [x] cartAttributesUpdate -- [x] cartBuyerIdentityUpdate -- [x] cartDiscountCodesUpdate -- [x] cartLinesAdd -- [x] cartLinesRemove -- [x] cartLinesUpdate -- [x] cartNoteUpdate - -- [ ] cartSelectedDeliveryOptionsUpdate -*/ - // GraphQL import cartNodeQuery from './graphql/cartNodeQuery.graphql'; import cartCreateMutation from './graphql/cartCreateMutation.graphql'; @@ -26,18 +12,10 @@ import cartLinesAddMutation from './graphql/cartLinesAddMutation.graphql'; import cartLinesRemoveMutation from './graphql/cartLinesRemoveMutation.graphql'; import cartLinesUpdateMutation from './graphql/cartLinesUpdateMutation.graphql'; import cartNoteUpdateMutation from './graphql/cartNoteUpdateMutation.graphql'; - -// import checkoutLineItemsAddMutation from './graphql/checkoutLineItemsAddMutation.graphql'; -// import checkoutLineItemsRemoveMutation from './graphql/checkoutLineItemsRemoveMutation.graphql'; -// import checkoutLineItemsReplaceMutation from './graphql/checkoutLineItemsReplaceMutation.graphql'; -// import checkoutLineItemsUpdateMutation from './graphql/checkoutLineItemsUpdateMutation.graphql'; -// import checkoutDiscountCodeRemoveMutation from './graphql/checkoutDiscountCodeRemoveMutation.graphql'; -// import checkoutGiftCardsAppendMutation from './graphql/checkoutGiftCardsAppendMutation.graphql'; -// import checkoutGiftCardRemoveV2Mutation from './graphql/checkoutGiftCardRemoveV2Mutation.graphql'; -// import checkoutShippingAddressUpdateV2Mutation from './graphql/checkoutShippingAddressUpdateV2Mutation.graphql'; +import cartSelectedDeliveryOptionsUpdateMutation from './graphql/cartSelectedDeliveryOptionsUpdateMutation.graphql'; /** - * The JS Buy SDK checkout resource + * The JS Buy SDK cart resource * @class */ class CartResource extends Resource { @@ -83,12 +61,13 @@ class CartResource extends Resource { * }); * * @param {Object} [input] An input object containing zero or more of: - * @param {String} [input.buyerIdentity.email] An email connected to the checkout. - * @param {Object[]} [input.lines] A list of line items in the checkout. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/checkoutlineiteminput|Storefront API reference} for valid input fields for each line item. - * @param {Object} [input.deliveryAddressPreferences.deliveryAddress] A shipping address. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/mailingaddressinput|Storefront API reference} for valid input fields. - * @param {String} [input.note] A note for the checkout. - * @param {Object[]} [input.attributes] A list of custom attributes for the checkout. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/attributeinput|Storefront API reference} for valid input fields. - * @return {Promise|GraphModel} A promise resolving with the created checkout. + * @param {Object[]} [input.attributes] A list of attributes for the cart. See the {@link https://shopify.dev/docs/api/storefront/latest/input-objects/AttributeInput|Storefront API reference} for valid input fields. + * @param {Object} [input.buyerIdentity] The customer associated with the cart. See the {@link https://shopify.dev/docs/api/storefront/latest/input-objects/CartBuyerIdentityInput|Storefront API reference} for valid input fields. + * @param {String[]} [input.discountCodes] The discount codes for the cart. + * @param {Object[]} [input.lines] A list of line items in the cart. See the {@link https://shopify.dev/docs/api/storefront/latest/input-objects/CartLineInput|Storefront API reference} for valid input fields for each line item. + * @param {Object[]} [input.metafields] The metafields for this cart. See the {@link https://shopify.dev/docs/api/storefront/latest/input-objects/CartInputMetafieldInput|Storefront API reference} for valid input fields for each line item. + * @param {String} [input.note] A note for the cart. + * @return {Promise|GraphModel} A promise resolving with the created cart. */ create(input = {}) { return this.graphQLClient @@ -119,12 +98,15 @@ class CartResource extends Resource { /** * Replaces the value of a cart's buyer identity + * * @example * const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; * const buyerIdentity = {email: "hello@hi.com"}; + * * client.cart.updateBuyerIdentity(cartId, buyerIdentity).then((cart) => { * // Do something with the updated cart * }); + * * @param {String} cartId The ID of the cart to update. * @param {Object} [buyerIdentity] A list of additional information about the cart. See the {@link https://shopify.dev/docs/api/storefront/unstable/input-objects/AttributeInput|Storefront API reference} for valid input fields. * @return {Promise|GraphModel} A promise resolving with the updated cart. @@ -137,12 +119,15 @@ class CartResource extends Resource { /** * Replaces the value of a cart's discount codes + * * @example * const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; * const discountCodes = [{code: "MyCode"}]; + * * client.cart.updateDiscountCodes(cartId, discountCodes).then((cart) => { * // Do something with the updated cart * }); + * * @param {String} cartId The ID of the cart to update. * @param {Object[]} [discountCodes] A list of additional information about the cart. See the {@link https://shopify.dev/docs/api/storefront/unstable/input-objects/AttributeInput|Storefront API reference} for valid input fields. * @return {Promise|GraphModel} A promise resolving with the updated cart. @@ -155,12 +140,15 @@ class CartResource extends Resource { /** * Adds line items to a cart + * * @example * const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; * const lines = [{merchandiseId: 'gid://shopify/Product/123456', quantity: 5}]; + * * client.cart.addLineItems(cartId, lines).then((cart) => { * // Do something with the updated cart * }); + * * @param {String} cartId The ID of the cart to update. * @param {Object[]} [lines] A list of merchandise lines to add to the cart. * @return {Promise|GraphModel} A promise resolving with the updated cart. @@ -173,12 +161,15 @@ class CartResource extends Resource { /** * Removes line items from a cart + * * @example * const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; * const lineIds = ['gid://shopify/CartLineItem/123456']; + * * client.cart.removeLineItems(cartId, lineIds).then((cart) => { * // Do something with the updated cart * }); + * * @param {String} cartId The ID of the cart to update. * @param {String[]} [lineIds] A list of merchandise lines to remove from the cart. * @return {Promise|GraphModel} A promise resolving with the updated cart. @@ -192,12 +183,15 @@ class CartResource extends Resource { /** * Updates line items in a cart + * * @example * const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; * const lines = [{id: 'gid://shopify/CartLineItem/123456', quantity: 5}]; + * * client.cart.updateLineItems(cartId, lines).then((cart) => { * // Do something with the updated cart * }); + * * @param {String} cartId The ID of the cart to update. * @param {Object[]} [lines] A list of merchandise lines to update in the cart. * @return {Promise|GraphModel} A promise resolving with the updated cart. @@ -210,12 +204,15 @@ class CartResource extends Resource { /** * Updates the note on a cart + * * @example * const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; * const note = 'A note for the cart'; + * * client.cart.updateNote(cartId, note).then((cart) => { * // Do something with the updated cart * } + * * @param {String} cartId The ID of the cart to update. * @param {String} [note] A note for the cart. * @return {Promise|GraphModel} A promise resolving with the updated cart. @@ -226,8 +223,31 @@ class CartResource extends Resource { .then(handleCartMutation('cartNoteUpdate', this.graphQLClient)); } - - + /** + * Updates the selected delivery options on a cart + * + * @example + * const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; + * const selectedDeliveryOptions = [ + * { + * deliveryGroupId: '', + * deliveryOptionHandle: '' + * } + * ]; + * + * client.cart.updateSelectedDeliveryOptions(cartId, selectedDeliveryOptions).then((cart) => { + * // Do something with the updated cart + * } + * + * @param {String} cartId The ID of the cart to update. + * @param {Object} [selectedDeliveryOptions] The selected delivery options. See the {@link https://shopify.dev/docs/api/storefront/2023-10/mutations/cartSelectedDeliveryOptionsUpdate|Storefront API reference} for valid input fields. + * @return {Promise|GraphModel} A promise resolving with the updated cart. + * */ + updateSelectedDeliveryOptions(cartId, deliveryOptions) { + return this.graphQLClient + .send(cartSelectedDeliveryOptionsUpdateMutation, {cartId, deliveryOptions}) + .then(handleCartMutation('cartSelectedDeliveryOptionsUpdate', this.graphQLClient)); + } } export default CartResource; diff --git a/src/graphql/CartFragment.graphql b/src/graphql/CartFragment.graphql index 4e8d8a468..43cbb9999 100644 --- a/src/graphql/CartFragment.graphql +++ b/src/graphql/CartFragment.graphql @@ -48,6 +48,27 @@ fragment CartFragment on Cart { customer { email } + deliveryAddressPreferences { + ... on MailingAddress { + address1 + address2 + city + company + country + countryCodeV2 + firstName + formatted + formattedArea + id + lastName + latitude + longitude + name + phone + province + provinceCode + } + } } deliveryGroups(first: 10) { pageInfo { @@ -74,7 +95,6 @@ fragment CartFragment on Cart { phone province provinceCode - zip } deliveryOptions { code diff --git a/src/graphql/cartSelectedDeliveryOptionsUpdateMutation.graphql b/src/graphql/cartSelectedDeliveryOptionsUpdateMutation.graphql new file mode 100644 index 000000000..ec380f25a --- /dev/null +++ b/src/graphql/cartSelectedDeliveryOptionsUpdateMutation.graphql @@ -0,0 +1,17 @@ +mutation cartSelectedDeliveryOptionsUpdate( + $cartId: ID! + $selectedDeliveryOptions: [CartSelectedDeliveryOptionInput!]! +) { + cartSelectedDeliveryOptionsUpdate( + cartId: $cartId + selectedDeliveryOptions: $selectedDeliveryOptions + ) { + cart { + ...CartFragment + } + userErrors { + field + message + } + } +} From 495c6a81d09efd9fca2b84c9eb7cb68777611d64 Mon Sep 17 00:00:00 2001 From: Scott Dixon Date: Thu, 8 Feb 2024 13:43:12 +1000 Subject: [PATCH 10/19] Readme --- README.md | 101 ++++++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 75 insertions(+), 26 deletions(-) diff --git a/README.md b/README.md index c51cac870..1bab36b73 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ # [Shopify](https://www.shopify.com) JavaScript Buy SDK + ![Build](https://github.com/shopify/js-buy-sdk/actions/workflows/ci.yml/badge.svg) **Note**: For help with migrating from v0 of JS Buy SDK to v1 check out the @@ -23,22 +24,35 @@ Each version of the JS Buy SDK uses a specific Storefront API version and the su - [Installation](#installation) - [Builds](#builds) - [Examples](#examples) - + [Initializing the Client](#initializing-the-client) - + [Fetching Products](#fetching-products) - + [Fetching Collections](#fetching-collections) - + [Creating a Checkout](#creating-a-checkout) - + [Updating Checkout Attributes](#updating-checkout-attributes) - + [Adding Line Items](#adding-line-items) - + [Updating Line Items](#updating-line-items) - + [Removing Line Items](#removing-line-items) - + [Fetching a Checkout](#fetching-a-checkout) - + [Adding a Discount](#adding-a-discount) - + [Removing a Discount](#removing-a-discount) - + [Updating a Shipping Address](#updating-a-shipping-address) - + [Completing a checkout](#completing-a-checkout) + - [Initializing the Client](#initializing-the-client) + - [Fetching Products](#fetching-products) + - [Fetching Collections](#fetching-collections) + - [Carts](#carts) + - [Creting a Cart](#creating-a-cart) + - [Fetching a Cart](#fetching-a-cart) + - [Updating Cart Attributes](#updating-cart-attributes) + - [Updating Buyer Identity](#updating-cart-buyer-identity) + - [Updating Discount Codes](#updating-cart-discount-codes) + - [Adding Cart Line Items](#adding-cart-line-items) + - [Removing Cart Line Items](#removing-cart-line-items) + - [Updating Cart Line Items](#updating-cart-line-items) + - [Updating Cart Notes](#updating-cart-notes) + - [Updating Cart Selected Delivery Options](#updating-cart-selected-delivery-options) + - [Redirecting to Checkout](#redirecting-to-checkout) + - [Checkouts](#checkouts) + - [Creating a Checkout](#creating-a-checkout) + - [Updating Checkout Attributes](#updating-checkout-attributes) + - [Adding Line Items](#adding-line-items) + - [Updating Line Items](#updating-line-items) + - [Removing Line Items](#removing-line-items) + - [Fetching a Checkout](#fetching-a-checkout) + - [Adding a Discount](#adding-a-discount) + - [Removing a Discount](#removing-a-discount) + - [Updating a Shipping Address](#updating-a-shipping-address) + - [Completing a checkout](#completing-a-checkout) - [Expanding the SDK](#expanding-the-sdk) - + [Initializing the Client](#initializing-the-client-1) - + [Fetching Products](#fetching-products-1) + - [Initializing the Client](#initializing-the-client-1) + - [Fetching Products](#fetching-products-1) - [Example Apps](#example-apps) - [Documentation](#documentation) - [Contributing](#contributing) @@ -46,13 +60,17 @@ Each version of the JS Buy SDK uses a specific Storefront API version and the su - [License](#license) ## Installation + **With Yarn:** + ```bash -$ yarn add shopify-buy +yarn add shopify-buy ``` + **With NPM:** + ```bash -$ npm install shopify-buy +npm install shopify-buy ``` **CDN:** @@ -76,20 +94,27 @@ You can also fetch the unoptimized release for a version (2.0.1 and above). This ``` ## Builds + The JS Buy SDK has four build versions: ES, CommonJS, AMD, and UMD. **ES, CommonJS:** + ```javascript import Client from 'shopify-buy'; ``` + **AMD:** + ```javascript import Client from 'shopify-buy/index.amd'; ``` + **UMD:** + ```javascript import Client from 'shopify-buy/index.umd'; ``` + **UMD Unoptimized:** This will be larger than the optimized version, as it will contain all fields that are available in the [Storefront API](https://help.shopify.com/en/api/custom-storefronts/storefront-api/reference). This should only be used when you need to add custom queries to supplement the JS Buy SDK queries. @@ -100,6 +125,7 @@ import Client from 'shopify-buy/index.unoptimized.umd'; ## Examples ### Initializing the Client + If your store supports multiple languages, Storefront API can return translated resource types and fields. Learn more about [translating content](https://help.shopify.com/en/api/guides/multi-language/translating-content-api). ```javascript @@ -120,6 +146,7 @@ const clientWithTranslatedContent = Client.buildClient({ ``` ### Fetching Products + ```javascript // Fetch all products in your shop client.product.fetchAll().then((products) => { @@ -145,6 +172,7 @@ client.product.fetchByHandle(handle).then((product) => { ``` ### Fetching Collections + ```javascript // Fetch all collections, including their products client.collection.fetchAllWithProducts().then((collections) => { @@ -167,6 +195,7 @@ client.collection.fetchWithProducts(collectionId, {productsFirst: 10}).then((col ## Carts ### Creating a Cart + ```javascript const input = { lines: { @@ -184,6 +213,7 @@ client.cart.create(input).then((cart) => { ``` ### Fetching a Cart + ```javascript const cartId = 'gid://shopify/Cart/Z2NwLWV1cm9wZS13ZXN0NDowMUhOTTI0QVZYV1NOSEVNOUVCQ1JSNUhSVg' @@ -193,6 +223,7 @@ client.cart.fetch(cartId).then((cart) => { ``` ### Updating Cart Attributes + ```javascript const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; const attributes = [{key: "MyKey", value: "MyValue"}]; @@ -202,7 +233,8 @@ client.cart.updateAttributes(cartId, attributes).then((cart) => { }); ``` -### Updating Cart Buyer Identity +### Updating Buyer Identity + ```javascript const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; const buyerIdentity = {email: "hello@hi.com"}; @@ -212,7 +244,8 @@ client.cart.updateBuyerIdentity(cartId, buyerIdentity).then((cart) => { }); ``` -### Updating Cart Discount Codes +### Updating Discount Codes + ```javascript const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; const discountCodes = [{code: "MyCode"}]; @@ -222,7 +255,8 @@ client.cart.updateDiscountCodes(cartId, discountCodes).then((cart) => { }); ``` -### Adding Cart Line Items +### Adding Line Items + ```javascript const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; const lines = [{merchandiseId: 'gid://shopify/Product/123456', quantity: 5}]; @@ -232,7 +266,8 @@ client.cart.addLineItems(cartId, lines).then((cart) => { }); ``` -### Removing Cart Line Items +### Removing Line Items + ```javascript const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; const lineIdsToRemove = ['gid://shopify/CartLineItem/123456']; @@ -242,7 +277,8 @@ client.cart.addLineItems(cartId, lineIdsToRemove).then((cart) => { }); ``` -### Updating Cart Line Items +### Updating Line Items + ```javascript const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; const lines = [{id: 'gid://shopify/CartLineItem/123456', quantity: 5}]; @@ -253,6 +289,7 @@ client.cart.updateLineItems(cartId, lines).then((cart) => { ``` ### Updating Cart Notes + ```javascript const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; const note = 'A note for the cart'; @@ -263,6 +300,7 @@ client.cart.updateNote(cartId, note).then((cart) => { ``` ### Updating Cart Selected Delivery Options + ```javascript const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; const selectedDeliveryOptions = [ @@ -277,15 +315,14 @@ client.cart.updateSelectedDeliveryOptions(cartId, selectedDeliveryOptions).then( } ``` -### Complete the checkout +### Redirecting to Checkout -To complete the checkout, redirect customers to the `checkoutUrl` property attached to the cart. This URL points to Shopify's checkout to complete the purchase. +To complete the purchase, redirect customers to the `checkoutUrl` property attached to the cart. ## Checkouts -Note: [It's recommended to use Cart instead of Checkout](https://github.com/Shopify/storefront-api-feedback/discussions/225). - ### Creating a Checkout + ```javascript // Create an empty checkout client.checkout.create().then((checkout) => { @@ -295,6 +332,7 @@ client.checkout.create().then((checkout) => { ``` ### Updating checkout attributes + ```javascript const checkoutId = 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8'; const input = {customAttributes: [{key: "MyKey", value: "MyValue"}]}; @@ -305,6 +343,7 @@ client.checkout.updateAttributes(checkoutId, input).then((checkout) => { ``` ### Adding Line Items + ```javascript const checkoutId = 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8'; // ID of an existing checkout const lineItemsToAdd = [ @@ -323,6 +362,7 @@ client.checkout.addLineItems(checkoutId, lineItemsToAdd).then((checkout) => { ``` ### Updating Line Items + ```javascript const checkoutId = 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8'; // ID of an existing checkout const lineItemsToUpdate = [ @@ -337,6 +377,7 @@ client.checkout.updateLineItems(checkoutId, lineItemsToUpdate).then((checkout) = ``` ### Removing Line Items + ```javascript const checkoutId = 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8'; // ID of an existing checkout const lineItemIdsToRemove = [ @@ -351,6 +392,7 @@ client.checkout.removeLineItems(checkoutId, lineItemIdsToRemove).then((checkout) ``` ### Fetching a Checkout + ```javascript const checkoutId = 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8' @@ -361,6 +403,7 @@ client.checkout.fetch(checkoutId).then((checkout) => { ``` ### Adding a Discount + ```javascript const checkoutId = 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8'; // ID of an existing checkout const discountCode = 'best-discount-ever'; @@ -373,6 +416,7 @@ client.checkout.addDiscount(checkoutId, discountCode).then(checkout => { ``` ### Removing a Discount + ```javascript const checkoutId = 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8'; // ID of an existing checkout @@ -384,6 +428,7 @@ client.checkout.removeDiscount(checkoutId).then(checkout => { ``` ### Updating a Shipping Address + ```javascript const checkoutId = 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8'; // ID of an existing checkout @@ -415,6 +460,7 @@ The simplest way to complete a checkout is to use the [webUrl](https://help.shop Not all fields that are available on the [Storefront API](https://help.shopify.com/en/api/custom-storefronts/storefront-api/reference) are exposed through the SDK. If you use the unoptimized version of the SDK, you can easily build your own queries. In order to do this, use the UMD Unoptimized build. ### Initializing the Client + ```javascript // fetch the large, unoptimized version of the SDK import Client from 'shopify-buy/index.unoptimized.umd'; @@ -426,6 +472,7 @@ const client = Client.buildClient({ ``` ### Fetching Products + ```javascript // Build a custom products query using the unoptimized version of the SDK const productsQuery = client.graphQLClient.query((root) => { @@ -454,10 +501,12 @@ There are JS Buy SDK specific example apps in Node, Ember, and React. You can us - [API documentation](https://shopify.github.io/js-buy-sdk). ## Contributing + For help on setting up the repo locally, building, testing, and contributing please see [CONTRIBUTING.md](https://github.com/Shopify/js-buy-sdk/blob/main/CONTRIBUTING.md). ## Code of Conduct + All developers who wish to contribute through code or issues, take a look at the [CODE_OF_CONDUCT.md](https://github.com/Shopify/js-buy-sdk/blob/main/CODE_OF_CONDUCT.md). From 45b36dbf29fd4a785f5e668f6bd49bcfd60d7334 Mon Sep 17 00:00:00 2001 From: Scott Dixon Date: Thu, 8 Feb 2024 13:44:53 +1000 Subject: [PATCH 11/19] Readme --- README.md | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 1bab36b73..bfd6c17f9 100644 --- a/README.md +++ b/README.md @@ -28,11 +28,11 @@ Each version of the JS Buy SDK uses a specific Storefront API version and the su - [Fetching Products](#fetching-products) - [Fetching Collections](#fetching-collections) - [Carts](#carts) - - [Creting a Cart](#creating-a-cart) + - [Creating a Cart](#creating-a-cart) - [Fetching a Cart](#fetching-a-cart) - [Updating Cart Attributes](#updating-cart-attributes) - - [Updating Buyer Identity](#updating-cart-buyer-identity) - - [Updating Discount Codes](#updating-cart-discount-codes) + - [Updating Buyer Identity](#updating-buyer-identity) + - [Updating Discount Codes](#updating-discount-codes) - [Adding Cart Line Items](#adding-cart-line-items) - [Removing Cart Line Items](#removing-cart-line-items) - [Updating Cart Line Items](#updating-cart-line-items) @@ -255,7 +255,7 @@ client.cart.updateDiscountCodes(cartId, discountCodes).then((cart) => { }); ``` -### Adding Line Items +### Adding Cart Line Items ```javascript const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; @@ -266,7 +266,7 @@ client.cart.addLineItems(cartId, lines).then((cart) => { }); ``` -### Removing Line Items +### Removing Cart Line Items ```javascript const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; @@ -277,7 +277,7 @@ client.cart.addLineItems(cartId, lineIdsToRemove).then((cart) => { }); ``` -### Updating Line Items +### Updating Cart Line Items ```javascript const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; @@ -321,6 +321,9 @@ To complete the purchase, redirect customers to the `checkoutUrl` property attac ## Checkouts +> [!WARNING] +> Checkouts will [soon be deprecated](https://github.com/Shopify/storefront-api-feedback/discussions/225). Use [Carts](#carts) instead. + ### Creating a Checkout ```javascript From f7cba95d85b82b73d5af84cc67f230207d43d3ef Mon Sep 17 00:00:00 2001 From: Scott Dixon Date: Fri, 9 Feb 2024 15:51:21 +1000 Subject: [PATCH 12/19] Cart tests --- README.md | 16 - ...line-items-add-fixture-with-user-errors.js | 18 + fixtures/cart-line-items-add-fixture.js | 81 +++ fixtures/cart-line-items-remove-fixture.js | 49 ++ ...e-items-update-fixture-with-user-errors.js | 18 + fixtures/cart-line-items-update-fixture.js | 81 +++ ...buyer-identity-fixture-with-user-errors.js | 17 + .../cart-update-buyer-identity-fixture.js | 82 +++ .../cart-update-discount-codes-fixture.js | 87 +++ fixtures/cart-update-note-fixture.js | 82 +++ src/cart-resource.js | 27 - src/graphql/CartFragment.graphql | 8 +- .../cartAttributesUpdateMutation.graphql | 1 + .../cartBuyerIdentityUpdateMutation.graphql | 1 + .../cartDiscountCodesUpdateMutation.graphql | 1 + src/graphql/cartLinesAddMutation.graphql | 1 + src/graphql/cartLinesRemoveMutation.graphql | 1 + src/graphql/cartLinesUpdateMutation.graphql | 1 + ...ectedDeliveryOptionsUpdateMutation.graphql | 1 + test/client-cart-integration-test.js | 600 +++++------------- 20 files changed, 671 insertions(+), 502 deletions(-) create mode 100644 fixtures/cart-line-items-add-fixture-with-user-errors.js create mode 100644 fixtures/cart-line-items-add-fixture.js create mode 100644 fixtures/cart-line-items-remove-fixture.js create mode 100644 fixtures/cart-line-items-update-fixture-with-user-errors.js create mode 100644 fixtures/cart-line-items-update-fixture.js create mode 100644 fixtures/cart-update-buyer-identity-fixture-with-user-errors.js create mode 100644 fixtures/cart-update-buyer-identity-fixture.js create mode 100644 fixtures/cart-update-discount-codes-fixture.js create mode 100644 fixtures/cart-update-note-fixture.js diff --git a/README.md b/README.md index bfd6c17f9..f24e6a54e 100644 --- a/README.md +++ b/README.md @@ -299,22 +299,6 @@ client.cart.updateNote(cartId, note).then((cart) => { } ``` -### Updating Cart Selected Delivery Options - -```javascript -const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; -const selectedDeliveryOptions = [ - { - deliveryGroupId: '', - deliveryOptionHandle: '' - } -]; - -client.cart.updateSelectedDeliveryOptions(cartId, selectedDeliveryOptions).then((cart) => { - // Do something with the updated cart -} -``` - ### Redirecting to Checkout To complete the purchase, redirect customers to the `checkoutUrl` property attached to the cart. diff --git a/fixtures/cart-line-items-add-fixture-with-user-errors.js b/fixtures/cart-line-items-add-fixture-with-user-errors.js new file mode 100644 index 000000000..5c208ee72 --- /dev/null +++ b/fixtures/cart-line-items-add-fixture-with-user-errors.js @@ -0,0 +1,18 @@ +export default { + data: { + cartLinesAdd: { + cart: null, + userErrors: [ + { + field: [ + 'lines', + '0', + 'merchandiseId' + ], + message: 'The merchandise with id gid://shopify/ProductVariant/invalid-id does not exist.', + code: 'INVALID' + } + ] + } + } +} diff --git a/fixtures/cart-line-items-add-fixture.js b/fixtures/cart-line-items-add-fixture.js new file mode 100644 index 000000000..3ca31f6aa --- /dev/null +++ b/fixtures/cart-line-items-add-fixture.js @@ -0,0 +1,81 @@ +export default { + data: { + cartLinesAdd: { + cart: { + id: 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSFA1UFBYVE1ZTkRBVkFHMlNIQ1RENE0y', + createdAt: '2024-02-09T01:11:32Z', + updatedAt: '2024-02-09T01:11:33Z', + lines: { + pageInfo: { + hasNextPage: false, + hasPreviousPage: false + }, + edges: [ + { + node: { + __typename: 'CartLine', + id: 'gid://shopify/CartLine/ff20f2b0-a16f-4127-8f5c-3ae00596fcb9?cart=Z2NwLXVzLWVhc3QxOjAxSFA1UFBYVE1ZTkRBVkFHMlNIQ1RENE0y', + merchandise: { + id: 'gid://shopify/ProductVariant/13666012889144' + }, + quantity: 2, + attributes: [], + cost: { + totalAmount: { + amount: '10.3', + currencyCode: 'AUD' + }, + subtotalAmount: { + amount: '10.3', + currencyCode: 'AUD' + }, + amountPerQuantity: { + amount: '5.15', + currencyCode: 'AUD' + }, + compareAtAmountPerQuantity: null + }, + discountAllocations: [], + sellingPlanAllocation: null + } + } + ] + }, + attributes: [], + cost: { + totalAmount: { + amount: '10.2', + currencyCode: 'AUD' + }, + subtotalAmount: { + amount: '10.3', + currencyCode: 'AUD' + }, + totalTaxAmount: { + amount: '0.93', + currencyCode: 'AUD' + }, + totalDutyAmount: null + }, + checkoutUrl: 'https://myshopify.com/cart/c/Z2NwLXVzLWVhc3QxOjAxSFA1UFBYVE1ZTkRBVkFHMlNIQ1RENE0y?key=239090a4dea9c74475cd0b63d8561d39', + discountCodes: [], + buyerIdentity: { + countryCode: null, + walletPreferences: [], + email: null, + phone: null, + customer: null + }, + deliveryGroups: { + pageInfo: { + hasNextPage: false, + hasPreviousPage: false + }, + edges: [] + }, + note: '' + }, + userErrors: [] + } + } +} diff --git a/fixtures/cart-line-items-remove-fixture.js b/fixtures/cart-line-items-remove-fixture.js new file mode 100644 index 000000000..92cc4fedf --- /dev/null +++ b/fixtures/cart-line-items-remove-fixture.js @@ -0,0 +1,49 @@ +export default { + data: { + cartLinesRemove: { + cart: { + id: 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSFA1UFBYVE1ZTkRBVkFHMlNIQ1RENE0y', + createdAt: '2024-02-09T04:22:51Z', + updatedAt: '2024-02-09T04:22:52Z', + lines: { + pageInfo: { + hasNextPage: false, + hasPreviousPage: false + }, + edges: [] + }, + attributes: [], + cost: { + totalAmount: { + amount: '0.0', + currencyCode: 'AUD' + }, + subtotalAmount: { + amount: '0.0', + currencyCode: 'AUD' + }, + totalTaxAmount: null, + totalDutyAmount: null + }, + checkoutUrl: 'https://myshopify.com/cart/c/Z2NwLXVzLWVhc3QxOjAxSFA2MU44Mk1ZM0tTVjBHOUJZVFA1MTIx?key=fcf02f7c1e176bf0c999aabfcc660c3f', + discountCodes: [], + buyerIdentity: { + countryCode: null, + walletPreferences: [], + email: null, + phone: null, + customer: null + }, + deliveryGroups: { + pageInfo: { + hasNextPage: false, + hasPreviousPage: false + }, + edges: [] + }, + note: '' + }, + userErrors: [] + } + } +} diff --git a/fixtures/cart-line-items-update-fixture-with-user-errors.js b/fixtures/cart-line-items-update-fixture-with-user-errors.js new file mode 100644 index 000000000..0d5803ed9 --- /dev/null +++ b/fixtures/cart-line-items-update-fixture-with-user-errors.js @@ -0,0 +1,18 @@ +export default { + data: { + cartLinesUpdate: { + cart: null, + userErrors: [ + { + field: [ + 'lines', + '0', + 'merchandiseId' + ], + message: 'The merchandise with id gid://shopify/ProductVariant/invalid-id does not exist.', + code: 'INVALID' + } + ] + } + } +} diff --git a/fixtures/cart-line-items-update-fixture.js b/fixtures/cart-line-items-update-fixture.js new file mode 100644 index 000000000..dbd16b36f --- /dev/null +++ b/fixtures/cart-line-items-update-fixture.js @@ -0,0 +1,81 @@ +export default { + data: { + cartLinesUpdate: { + cart: { + id: 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSFA1UFBYVE1ZTkRBVkFHMlNIQ1RENE0y', + createdAt: '2024-02-09T01:11:32Z', + updatedAt: '2024-02-09T01:11:33Z', + lines: { + pageInfo: { + hasNextPage: false, + hasPreviousPage: false + }, + edges: [ + { + node: { + __typename: 'CartLine', + id: 'gid://shopify/CartLine/ff20f2b0-a16f-4127-8f5c-3ae00596fcb9?cart=Z2NwLXVzLWVhc3QxOjAxSFA1UFBYVE1ZTkRBVkFHMlNIQ1RENE0y', + merchandise: { + id: 'gid://shopify/ProductVariant/13666012889144' + }, + quantity: 2, + attributes: [], + cost: { + totalAmount: { + amount: '10.3', + currencyCode: 'AUD' + }, + subtotalAmount: { + amount: '10.3', + currencyCode: 'AUD' + }, + amountPerQuantity: { + amount: '5.15', + currencyCode: 'AUD' + }, + compareAtAmountPerQuantity: null + }, + discountAllocations: [], + sellingPlanAllocation: null + } + } + ] + }, + attributes: [], + cost: { + totalAmount: { + amount: '10.2', + currencyCode: 'AUD' + }, + subtotalAmount: { + amount: '10.3', + currencyCode: 'AUD' + }, + totalTaxAmount: { + amount: '0.93', + currencyCode: 'AUD' + }, + totalDutyAmount: null + }, + checkoutUrl: 'https://myshopify.com/cart/c/Z2NwLXVzLWVhc3QxOjAxSFA1UFBYVE1ZTkRBVkFHMlNIQ1RENE0y?key=239090a4dea9c74475cd0b63d8561d39', + discountCodes: [], + buyerIdentity: { + countryCode: null, + walletPreferences: [], + email: null, + phone: null, + customer: null + }, + deliveryGroups: { + pageInfo: { + hasNextPage: false, + hasPreviousPage: false + }, + edges: [] + }, + note: '' + }, + userErrors: [] + } + } +} diff --git a/fixtures/cart-update-buyer-identity-fixture-with-user-errors.js b/fixtures/cart-update-buyer-identity-fixture-with-user-errors.js new file mode 100644 index 000000000..f66e456dd --- /dev/null +++ b/fixtures/cart-update-buyer-identity-fixture-with-user-errors.js @@ -0,0 +1,17 @@ +export default { + data: { + cartBuyerIdentityUpdate: { + cart: null, + userErrors: [ + { + field: [ + 'buyerIdentity', + 'email' + ], + message: 'Email is invalid', + code: 'INVALID' + } + ] + } + } +} diff --git a/fixtures/cart-update-buyer-identity-fixture.js b/fixtures/cart-update-buyer-identity-fixture.js new file mode 100644 index 000000000..ab22547c7 --- /dev/null +++ b/fixtures/cart-update-buyer-identity-fixture.js @@ -0,0 +1,82 @@ +export default { + data: { + cartBuyerIdentityUpdate: { + cart: { + id: 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSFA1SlNWOEQ5TUdaTkNaWEZZTk5LRE5T', + createdAt: '2024-02-09T00:03:13Z', + updatedAt: '2024-02-09T00:03:14Z', + lines: { + pageInfo: { + hasNextPage: false, + hasPreviousPage: false + }, + edges: [ + { + node: { + __typename: 'CartLine', + id: 'gid://shopify/CartLine/c6a616d3-64cc-493d-8328-a92b1215fb4b?cart=Z2NwLXVzLWVhc3QxOjAxSFA1SlNWOEQ5TUdaTkNaWEZZTk5LRE5T', + merchandise: { + id: 'gid://shopify/ProductVariant/13666012889144' + }, + quantity: 1, + attributes: [], + cost: { + totalAmount: { + amount: '5.15', + currencyCode: 'AUD' + }, + subtotalAmount: { + amount: '5.15', + currencyCode: 'AUD' + }, + amountPerQuantity: { + amount: '5.15', + currencyCode: 'AUD' + }, + compareAtAmountPerQuantity: null + }, + discountAllocations: [], + sellingPlanAllocation: null + } + } + ] + }, + attributes: [], + cost: { + totalAmount: { + amount: '5.09', + currencyCode: 'AUD' + }, + subtotalAmount: { + amount: '5.15', + currencyCode: 'AUD' + }, + totalTaxAmount: { + amount: '0.46', + currencyCode: 'AUD' + }, + totalDutyAmount: null + }, + checkoutUrl: 'https://myshopify.com/cart/c/Z2NwLXVzLWVhc3QxOjAxSFA1SlNWOEQ5TUdaTkNaWEZZTk5LRE5T?key=f031e84cff5ad3935d96d0cc708a97b8', + discountCodes: [], + buyerIdentity: { + countryCode: null, + walletPreferences: [], + email: 'hi@hello.com', + phone: null, + customer: null, + deliveryAddressPreferences: [] + }, + deliveryGroups: { + pageInfo: { + hasNextPage: false, + hasPreviousPage: false + }, + edges: [] + }, + note: '' + }, + userErrors: [] + } + } +} diff --git a/fixtures/cart-update-discount-codes-fixture.js b/fixtures/cart-update-discount-codes-fixture.js new file mode 100644 index 000000000..612a35fda --- /dev/null +++ b/fixtures/cart-update-discount-codes-fixture.js @@ -0,0 +1,87 @@ +export default { + data: { + cartDiscountCodesUpdate: { + cart: { + id: 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR', + createdAt: '2024-02-09T04:40:26Z', + updatedAt: '2024-02-09T04:40:28Z', + lines: { + pageInfo: { + hasNextPage: false, + hasPreviousPage: false + }, + edges: [ + { + node: { + __typename: 'CartLine', + id: 'gid://shopify/CartLine/22ee49c0-4c8b-424b-bb07-e1a919a17b6b?cart=Z2NwLXVzLWVhc3QxOjAxSFA2Mk5EWDBSUVQzRUgyV1Q1UkI0UURN', + merchandise: { + id: 'gid://shopify/ProductVariant/13666012889144' + }, + quantity: 1, + attributes: [], + cost: { + totalAmount: { + amount: '5.15', + currencyCode: 'AUD' + }, + subtotalAmount: { + amount: '5.15', + currencyCode: 'AUD' + }, + amountPerQuantity: { + amount: '5.15', + currencyCode: 'AUD' + }, + compareAtAmountPerQuantity: null + }, + discountAllocations: [], + sellingPlanAllocation: null + } + } + ] + }, + attributes: [], + cost: { + totalAmount: { + amount: '5.09', + currencyCode: 'AUD' + }, + subtotalAmount: { + amount: '5.15', + currencyCode: 'AUD' + }, + totalTaxAmount: { + amount: '0.46', + currencyCode: 'AUD' + }, + totalDutyAmount: null + }, + checkoutUrl: 'https://myshopify.com/cart/c/Z2NwLXVzLWVhc3QxOjAxSFA2Mk5EWDBSUVQzRUgyV1Q1UkI0UURN?key=2378e6ae4f4b126e67057648775e56f0', + discountCodes: [ + { + applicable: false, + code: '10OFF' + } + ], + buyerIdentity: { + countryCode: null, + walletPreferences: [], + email: null, + phone: null, + customer: null, + deliveryAddressPreferences: [] + }, + deliveryGroups: { + pageInfo: { + hasNextPage: false, + hasPreviousPage: false + }, + edges: [] + }, + note: '' + }, + userErrors: [] + } + } +} diff --git a/fixtures/cart-update-note-fixture.js b/fixtures/cart-update-note-fixture.js new file mode 100644 index 000000000..b75e7dddb --- /dev/null +++ b/fixtures/cart-update-note-fixture.js @@ -0,0 +1,82 @@ +export default { + data: { + cartNoteUpdate: { + cart: { + id: 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSFA2NDFLNUM0NVNZRTU4QVA3V0dQRkRE', + createdAt: '2024-02-09T05:04:33Z', + updatedAt: '2024-02-09T05:04:34Z', + lines: { + pageInfo: { + hasNextPage: false, + hasPreviousPage: false + }, + edges: [ + { + node: { + __typename: 'CartLine', + id: 'gid://shopify/CartLine/707fa759-932e-4649-b5bb-a4a1c5b1dc22?cart=Z2NwLXVzLWVhc3QxOjAxSFA2NDFLNUM0NVNZRTU4QVA3V0dQRkRE', + merchandise: { + id: 'gid://shopify/ProductVariant/13666012889144' + }, + quantity: 1, + attributes: [], + cost: { + totalAmount: { + amount: '5.15', + currencyCode: 'AUD' + }, + subtotalAmount: { + amount: '5.15', + currencyCode: 'AUD' + }, + amountPerQuantity: { + amount: '5.15', + currencyCode: 'AUD' + }, + compareAtAmountPerQuantity: null + }, + discountAllocations: [], + sellingPlanAllocation: null + } + } + ] + }, + attributes: [], + cost: { + totalAmount: { + amount: '5.09', + currencyCode: 'AUD' + }, + subtotalAmount: { + amount: '5.15', + currencyCode: 'AUD' + }, + totalTaxAmount: { + amount: '0.46', + currencyCode: 'AUD' + }, + totalDutyAmount: null + }, + checkoutUrl: 'https://myshopify.com/cart/c/Z2NwLXVzLWVhc3QxOjAxSFA2NDFLNUM0NVNZRTU4QVA3V0dQRkRE?key=c546cc21e716cf73d7ef910123b71a1c', + discountCodes: [], + buyerIdentity: { + countryCode: null, + walletPreferences: [], + email: null, + phone: null, + customer: null, + deliveryAddressPreferences: [] + }, + deliveryGroups: { + pageInfo: { + hasNextPage: false, + hasPreviousPage: false + }, + edges: [] + }, + note: 'This is a note!' + }, + userErrors: [] + } + } +} diff --git a/src/cart-resource.js b/src/cart-resource.js index 343408984..faba82d1e 100644 --- a/src/cart-resource.js +++ b/src/cart-resource.js @@ -12,7 +12,6 @@ import cartLinesAddMutation from './graphql/cartLinesAddMutation.graphql'; import cartLinesRemoveMutation from './graphql/cartLinesRemoveMutation.graphql'; import cartLinesUpdateMutation from './graphql/cartLinesUpdateMutation.graphql'; import cartNoteUpdateMutation from './graphql/cartNoteUpdateMutation.graphql'; -import cartSelectedDeliveryOptionsUpdateMutation from './graphql/cartSelectedDeliveryOptionsUpdateMutation.graphql'; /** * The JS Buy SDK cart resource @@ -222,32 +221,6 @@ class CartResource extends Resource { .send(cartNoteUpdateMutation, {cartId, note}) .then(handleCartMutation('cartNoteUpdate', this.graphQLClient)); } - - /** - * Updates the selected delivery options on a cart - * - * @example - * const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; - * const selectedDeliveryOptions = [ - * { - * deliveryGroupId: '', - * deliveryOptionHandle: '' - * } - * ]; - * - * client.cart.updateSelectedDeliveryOptions(cartId, selectedDeliveryOptions).then((cart) => { - * // Do something with the updated cart - * } - * - * @param {String} cartId The ID of the cart to update. - * @param {Object} [selectedDeliveryOptions] The selected delivery options. See the {@link https://shopify.dev/docs/api/storefront/2023-10/mutations/cartSelectedDeliveryOptionsUpdate|Storefront API reference} for valid input fields. - * @return {Promise|GraphModel} A promise resolving with the updated cart. - * */ - updateSelectedDeliveryOptions(cartId, deliveryOptions) { - return this.graphQLClient - .send(cartSelectedDeliveryOptionsUpdateMutation, {cartId, deliveryOptions}) - .then(handleCartMutation('cartSelectedDeliveryOptionsUpdate', this.graphQLClient)); - } } export default CartResource; diff --git a/src/graphql/CartFragment.graphql b/src/graphql/CartFragment.graphql index 43cbb9999..8b4e54d5a 100644 --- a/src/graphql/CartFragment.graphql +++ b/src/graphql/CartFragment.graphql @@ -59,7 +59,6 @@ fragment CartFragment on Cart { firstName formatted formattedArea - id lastName latitude longitude @@ -77,9 +76,10 @@ fragment CartFragment on Cart { } edges { node { + id deliveryAddress { - address1 address2 + address1 city company country @@ -87,7 +87,6 @@ fragment CartFragment on Cart { firstName formatted formattedArea - id lastName latitude longitude @@ -107,7 +106,6 @@ fragment CartFragment on Cart { handle title } - id selectedDeliveryOption { code deliveryMethodType @@ -126,7 +124,7 @@ fragment CartFragment on Cart { } edges { node { - ...CartLineFragment + id } } } diff --git a/src/graphql/cartAttributesUpdateMutation.graphql b/src/graphql/cartAttributesUpdateMutation.graphql index 01c2f98fc..a98c893c9 100644 --- a/src/graphql/cartAttributesUpdateMutation.graphql +++ b/src/graphql/cartAttributesUpdateMutation.graphql @@ -6,6 +6,7 @@ mutation cartAttributesUpdate($attributes: [AttributeInput!]!, $cartId: ID!) { userErrors { field message + code } } } diff --git a/src/graphql/cartBuyerIdentityUpdateMutation.graphql b/src/graphql/cartBuyerIdentityUpdateMutation.graphql index dd779841a..09ef51622 100644 --- a/src/graphql/cartBuyerIdentityUpdateMutation.graphql +++ b/src/graphql/cartBuyerIdentityUpdateMutation.graphql @@ -9,6 +9,7 @@ mutation cartBuyerIdentityUpdate( userErrors { field message + code } } } diff --git a/src/graphql/cartDiscountCodesUpdateMutation.graphql b/src/graphql/cartDiscountCodesUpdateMutation.graphql index 20782f7eb..3de39cc4d 100644 --- a/src/graphql/cartDiscountCodesUpdateMutation.graphql +++ b/src/graphql/cartDiscountCodesUpdateMutation.graphql @@ -6,6 +6,7 @@ mutation cartDiscountCodesUpdate($cartId: ID!, $discountCodes: [String!]!) { userErrors { field message + code } } } diff --git a/src/graphql/cartLinesAddMutation.graphql b/src/graphql/cartLinesAddMutation.graphql index 3e3a8d019..f0243abd8 100644 --- a/src/graphql/cartLinesAddMutation.graphql +++ b/src/graphql/cartLinesAddMutation.graphql @@ -6,6 +6,7 @@ mutation cartLinesAdd($cartId: ID!, $lines: [CartLineInput!]!) { userErrors { field message + code } } } diff --git a/src/graphql/cartLinesRemoveMutation.graphql b/src/graphql/cartLinesRemoveMutation.graphql index 1fd499cd5..604173c09 100644 --- a/src/graphql/cartLinesRemoveMutation.graphql +++ b/src/graphql/cartLinesRemoveMutation.graphql @@ -6,6 +6,7 @@ mutation cartLinesRemove($cartId: ID!, $lineIds: [ID!]!) { userErrors { field message + code } } } diff --git a/src/graphql/cartLinesUpdateMutation.graphql b/src/graphql/cartLinesUpdateMutation.graphql index 1f18c4eb8..d7469bcbc 100644 --- a/src/graphql/cartLinesUpdateMutation.graphql +++ b/src/graphql/cartLinesUpdateMutation.graphql @@ -6,6 +6,7 @@ mutation cartLinesUpdate($cartId: ID!, $lines: [CartLineUpdateInput!]!) { userErrors { field message + code } } } diff --git a/src/graphql/cartSelectedDeliveryOptionsUpdateMutation.graphql b/src/graphql/cartSelectedDeliveryOptionsUpdateMutation.graphql index ec380f25a..1434afb67 100644 --- a/src/graphql/cartSelectedDeliveryOptionsUpdateMutation.graphql +++ b/src/graphql/cartSelectedDeliveryOptionsUpdateMutation.graphql @@ -12,6 +12,7 @@ mutation cartSelectedDeliveryOptionsUpdate( userErrors { field message + code } } } diff --git a/test/client-cart-integration-test.js b/test/client-cart-integration-test.js index 43d774d6a..f075c79da 100644 --- a/test/client-cart-integration-test.js +++ b/test/client-cart-integration-test.js @@ -9,26 +9,15 @@ import cartNullFixture from '../fixtures/node-null-fixture'; import cartCreateFixture from '../fixtures/cart-create-fixture'; import cartCreateInvalidVariantIdErrorFixture from '../fixtures/cart-create-invalid-variant-id-error-fixture'; import cartUpdateAttributesFixture from '../fixtures/cart-update-attrs-fixture'; -import cartUpdateAttributesWithUserErrorsFixture from '../fixtures/cart-update-attrs-with-user-errors-fixture'; - -// import checkoutCreateWithPaginatedLineItemsFixture from '../fixtures/checkout-create-with-paginated-line-items-fixture'; -// import {secondPageLineItemsFixture, thirdPageLineItemsFixture} from '../fixtures/paginated-line-items-fixture'; -// import checkoutLineItemsAddFixture from '../fixtures/checkout-line-items-add-fixture'; -// import checkoutLineItemsAddWithUserErrorsFixture from '../fixtures/checkout-line-items-add-with-user-errors-fixture'; -// import checkoutLineItemsUpdateFixture from '../fixtures/checkout-line-items-update-fixture'; -// import checkoutLineItemsUpdateWithUserErrorsFixture from '../fixtures/checkout-line-items-update-with-user-errors-fixture'; -// import checkoutLineItemsRemoveFixture from '../fixtures/checkout-line-items-remove-fixture'; -// import checkoutLineItemsRemoveWithUserErrorsFixture from '../fixtures/checkout-line-items-remove-with-user-errors-fixture'; -// import checkoutLineItemsReplaceFixture from '../fixtures/checkout-line-items-replace-fixture'; -// import checkoutLineItemsReplaceWithUserErrorsFixture from '../fixtures/checkout-line-items-replace-with-user-errors-fixture'; -// import checkoutUpdateEmailV2Fixture from '../fixtures/checkout-update-email-fixture'; -// import checkoutUpdateEmailV2WithUserErrorsFixture from '../fixtures/checkout-update-email-with-user-errors-fixture'; -// import checkoutDiscountCodeApplyV2Fixture from '../fixtures/checkout-discount-code-apply-fixture'; -// import checkoutDiscountCodeRemoveFixture from '../fixtures/checkout-discount-code-remove-fixture'; -// import checkoutGiftCardsAppendFixture from '../fixtures/checkout-gift-cards-apply-fixture'; -// import checkoutGiftCardRemoveV2Fixture from '../fixtures/checkout-gift-card-remove-fixture'; -// import checkoutShippingAddressUpdateV2Fixture from '../fixtures/checkout-shipping-address-update-v2-fixture'; -// import checkoutShippingAdddressUpdateV2WithUserErrorsFixture from '../fixtures/checkout-shipping-address-update-v2-with-user-errors-fixture'; +import cartUpdateBuyerIdentityFixture from '../fixtures/cart-update-buyer-identity-fixture'; +import cartUpdateBuyerIdentityFixtureWithUserErrors from '../fixtures/cart-update-buyer-identity-fixture-with-user-errors'; +import cartLineItemsAddFixture from '../fixtures/cart-line-items-add-fixture'; +import cartLineItemsAddFixtureWithUserErrors from '../fixtures/cart-line-items-add-fixture-with-user-errors'; +import cartLineItemsUpdateFixture from '../fixtures/cart-line-items-update-fixture'; +import cartLineItemsUpdateFixtureWithUserErrors from '../fixtures/cart-line-items-update-fixture-with-user-errors'; +import cartLineItemsRemoveFixture from '../fixtures/cart-line-items-remove-fixture'; +import cartUpdateDiscountCodesFixture from '../fixtures/cart-update-discount-codes-fixture'; +import cartUpdateNoteFixture from '../fixtures/cart-update-note-fixture'; suite('client-cart-integration-test', () => { const domain = 'client-integration-tests.myshopify.io'; @@ -36,18 +25,6 @@ suite('client-cart-integration-test', () => { storefrontAccessToken: 'abc123', domain }; - // const shippingAddress = { - // address1: 'Chestnut Street 92', - // address2: 'Apartment 2', - // city: 'Louisville', - // company: null, - // country: 'United States', - // firstName: 'Bob', - // lastName: 'Norman', - // phone: '555-625-1199', - // province: 'Kentucky', - // zip: '40202' - // }; let client; let apiUrl; @@ -138,426 +115,141 @@ suite('client-cart-integration-test', () => { }); }); - // test('it resolves with a checkout on Client.checkout#updateEmail', () => { - // const checkoutId = 'Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE='; - // const input = { - // email: 'user@example.com' - // }; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutUpdateEmailV2Fixture); - - // return client.checkout.updateEmail(checkoutId, input).then((checkout) => { - // assert.equal(checkout.id, checkoutUpdateEmailV2Fixture.data.checkoutEmailUpdateV2.checkout.id); - // assert.equal(checkout.email, checkoutUpdateEmailV2Fixture.data.checkoutEmailUpdateV2.checkout.email); - // assert.ok(fetchMock.done()); - // }); - // }); - - // test('it resolve with user errors on Client.checkout#updateEmail when email is invalid', () => { - // const checkoutId = checkoutUpdateEmailV2Fixture.data.checkoutEmailUpdateV2.checkout.id; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutUpdateEmailV2WithUserErrorsFixture); - - // return client.checkout.updateEmail(checkoutId, {email: 'invalid-email'}).then(() => { - // assert.ok(false, 'Promise should not resolve'); - // }).catch((error) => { - // assert.equal(error.message, '[{"message":"Email is invalid","field":["email"],"code":"INVALID"}]'); - // }); - // }); - - // test('it resolves with a checkout on Client.checkout#addLineItems', () => { - // const checkoutId = checkoutLineItemsAddFixture.data.checkoutLineItemsAdd.checkout.id; - // const lineItems = [ - // {variantId: 'id1', quantity: 5}, - // {variantId: 'id2', quantity: 2} - // ]; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutLineItemsAddFixture); - - // return client.checkout.addLineItems(checkoutId, lineItems).then((checkout) => { - // assert.equal(checkout.id, checkoutId); - // assert.ok(fetchMock.done()); - // }); - // }); - - // test('it resolve with user errors on Client.checkout#addLineItems when variant is invalid', () => { - // const checkoutId = checkoutLineItemsAddFixture.data.checkoutLineItemsAdd.checkout.id; - // const lineItems = [ - // {variantId: '', quantity: 1} - // ]; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutLineItemsAddWithUserErrorsFixture); - - // return client.checkout.addLineItems(checkoutId, lineItems).then(() => { - // assert.ok(false, 'Promise should not resolve'); - // }).catch((error) => { - // assert.equal(error.message, '[{"message":"Variant is invalid","field":["lineItems","0","variantId"],"code":"INVALID"}]'); - // }); - // }); - - // test('it resolves with a checkout on Client.checkout#replaceLineItems', () => { - // const checkoutId = checkoutLineItemsReplaceFixture.data.checkoutLineItemsReplace.checkout.id; - // const lineItems = [ - // {variantId: 'id1', quantity: 5}, - // {variantId: 'id2', quantity: 2} - // ]; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutLineItemsReplaceFixture); - - // return client.checkout.replaceLineItems(checkoutId, lineItems).then((checkout) => { - // assert.equal(checkout.id, checkoutId); - // assert.ok(fetchMock.done()); - // }); - // }); - - // test('it resolve with user errors on Client.checkout#replaceLineItems when variant is invalid', () => { - // const checkoutId = checkoutLineItemsReplaceFixture.data.checkoutLineItemsReplace.checkout.id; - // const lineItems = [ - // {variantId: '', quantity: 1} - // ]; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutLineItemsReplaceWithUserErrorsFixture); - - // return client.checkout.replaceLineItems(checkoutId, lineItems).then(() => { - // assert.ok(false, 'Promise should not resolve'); - // }).catch((error) => { - // assert.equal(error.message, '[{"message":"Variant is invalid","field":["lineItems","0","variantId"],"code":"INVALID"}]'); - // }); - // }); - - // test('it resolves with a checkout on Client.checkout#updateLineItems', () => { - // const checkoutId = checkoutLineItemsUpdateFixture.data.checkoutLineItemsUpdate.checkout.id; - // const lineItems = [ - // { - // id: 'gid://shopify/CheckoutLineItem/194677729198640?checkout=e3bd71f7248c806f33725a53e33931ef', - // quantity: 2, - // variantId: 'variant-id' - // } - // ]; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutLineItemsUpdateFixture); - - // return client.checkout.updateLineItems(checkoutId, lineItems).then((checkout) => { - // assert.equal(checkout.id, checkoutId); - // assert.ok(fetchMock.done()); - // }); - // }); - - // test('it resolves with user errors on Client.checkout#updateLineItems when variant is invalid', () => { - // const checkoutId = checkoutLineItemsUpdateFixture.data.checkoutLineItemsUpdate.checkout.id; - // const lineItems = [ - // { - // id: 'id1', - // quantity: 2, - // variantId: '' - // } - // ]; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutLineItemsUpdateWithUserErrorsFixture); - - // return client.checkout.updateLineItems(checkoutId, lineItems).then(() => { - // assert.ok(false, 'Promise should not resolve'); - // }).catch((error) => { - // assert.equal(error.message, '[{"message":"Variant is invalid","field":["lineItems","0","variantId"],"code":"INVALID"}]'); - // }); - // }); - - // test('it resolves with a checkout on Client.checkout#removeLineItems', () => { - // const checkoutId = checkoutLineItemsRemoveFixture.data.checkoutLineItemsRemove.checkout.id; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutLineItemsRemoveFixture); - - // return client.checkout.removeLineItems(checkoutId, ['line-item-id']).then((checkout) => { - // assert.equal(checkout.id, checkoutId); - // assert.ok(fetchMock.done()); - // }); - // }); - - // test('it resolves with user errors on Client.checkout#removeLineItems when line item is invalid', () => { - // const checkoutId = checkoutLineItemsRemoveFixture.data.checkoutLineItemsRemove.checkout.id; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutLineItemsRemoveWithUserErrorsFixture); - - // return client.checkout.removeLineItems(checkoutId, ['invalid-line-item-id']).then(() => { - // assert.ok(false, 'Promise should not resolve'); - // }).catch((error) => { - // assert.equal(error.message, '[{"message":"Line item with id abcdefgh not found","field":null,"code":"LINE_ITEM_NOT_FOUND"}]'); - // }); - // }); - - // test('it resolves with a checkout on Client.checkout#addDiscount', () => { - // const checkoutId = checkoutDiscountCodeApplyV2Fixture.data.checkoutDiscountCodeApplyV2.checkout.id; - // const discountCode = 'TENPERCENTOFF'; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutDiscountCodeApplyV2Fixture); - - // return client.checkout.addDiscount(checkoutId, discountCode).then((checkout) => { - // assert.equal(checkout.id, checkoutId); - // assert.ok(fetchMock.done()); - // }); - // }); - - // test('it resolves with checkoutUserErrors on Client.checkout#addDiscount with an invalid code', () => { - // const checkoutDiscountCodeApplyV2WithCheckoutUserErrorsFixture = { - // data: { - // checkoutDiscountCodeApplyV2: { - // checkoutUserErrors: [ - // { - // message: 'Discount code Unable to find a valid discount matching the code entered', - // field: ['discountCode'], - // code: 'DISCOUNT_NOT_FOUND' - // } - // ], - // userErrors: [ - // { - // message: 'Discount code Unable to find a valid discount matching the code entered', - // field: ['discountCode'] - // } - // ], - // checkout: null - // } - // } - // }; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutDiscountCodeApplyV2WithCheckoutUserErrorsFixture); - - // const checkoutId = checkoutDiscountCodeApplyV2Fixture.data.checkoutDiscountCodeApplyV2.checkout.id; - // const discountCode = 'INVALIDCODE'; - - // return client.checkout.addDiscount(checkoutId, discountCode).then(() => { - // assert.ok(false, 'Promise should not resolve'); - // }).catch((error) => { - // assert.equal(error.message, '[{"message":"Discount code Unable to find a valid discount matching the code entered","field":["discountCode"],"code":"DISCOUNT_NOT_FOUND"}]'); - // }); - // }); - - // test('it resolves with a checkout on Client.checkout#removeDiscount', () => { - // const checkoutId = checkoutDiscountCodeRemoveFixture.data.checkoutDiscountCodeRemove.checkout.id; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutDiscountCodeRemoveFixture); - - // return client.checkout.removeDiscount(checkoutId).then((checkout) => { - // assert.equal(checkout.id, checkoutId); - // assert.ok(fetchMock.done()); - // }); - // }); - - // test('it resolves with a checkout on Client.checkout#addGiftCards', () => { - // const checkoutId = checkoutGiftCardsAppendFixture.data.checkoutGiftCardsAppend.checkout.id; - // const giftCardCodes = ['H8HA 6H9F HBA8 F2FC', '6FD8 835D AAGA 949F']; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutGiftCardsAppendFixture); - - // return client.checkout.addGiftCards(checkoutId, giftCardCodes).then((checkout) => { - // assert.equal(checkout.id, checkoutId); - // assert.ok(fetchMock.done()); - // }); - // }); - - // test('it resolves with checkoutUserErrors on Client.checkout#addGiftCards with an invalid code', () => { - // const checkoutGiftCardsApppendWithCheckoutUserErrorsFixture = { - // data: { - // checkoutGiftCardsAppend: { - // checkoutUserErrors: [ - // { - // message: 'Code is invalid', - // field: ['giftCardCodes', '0'], - // code: 'GIFT_CARD_CODE_INVALID' - // } - // ], - // userErrors: [ - // { - // message: 'Code is invalid', - // field: ['giftCardCodes', '0'] - // } - // ], - // checkout: null - // } - // } - // }; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutGiftCardsApppendWithCheckoutUserErrorsFixture); - - // const checkoutId = checkoutGiftCardsAppendFixture.data.checkoutGiftCardsAppend.checkout.id; - // const giftCardCode = 'INVALIDCODE'; - - // return client.checkout.addGiftCards(checkoutId, [giftCardCode]).then(() => { - // assert.ok(false, 'Promise should not resolve'); - // }).catch((error) => { - // assert.equal(error.message, '[{"message":"Code is invalid","field":["giftCardCodes","0"],"code":"GIFT_CARD_CODE_INVALID"}]'); - // }); - // }); - - // test('it resolves with a checkout on Client.checkout#removeGiftCard', () => { - // const checkoutId = checkoutGiftCardRemoveV2Fixture.data.checkoutGiftCardRemoveV2.checkout.id; - // const appliedGiftCardId = 'Z2lkOi8vc2hvcGlmeS9BcHBsaWVkR2lmdENhcmQvNDI4NTQ1ODAzMTI='; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutGiftCardRemoveV2Fixture); - - // return client.checkout.removeGiftCard(checkoutId, appliedGiftCardId).then((checkout) => { - // assert.equal(checkout.id, checkoutId); - // assert.ok(fetchMock.done()); - // }); - // }); - - // test('it resolves with checkoutUserErrors on Client.checkout#removeGiftCard with a code not present', () => { - // const checkoutGiftCardsRemoveV2WithCheckoutUserErrorsFixture = { - // data: { - // checkoutGiftCardRemoveV2: { - // checkoutUserErrors: [ - // { - // message: 'Applied Gift Card not found', - // field: null, - // code: 'GIFT_CARD_NOT_FOUND' - // } - // ], - // userErrors: [ - // { - // message: 'Applied Gift Card not found', - // field: null - // } - // ], - // checkout: null - // } - // } - // }; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutGiftCardsRemoveV2WithCheckoutUserErrorsFixture); - - // const checkoutId = checkoutGiftCardRemoveV2Fixture.data.checkoutGiftCardRemoveV2.checkout.id; - // const appliedGiftCardId = 'Z2lkOi8vc2hvcGlmeS9BcHBsaWVkR2lmdENhcmQvNDI4NTQ1ODAzMTI='; - - // return client.checkout.removeGiftCard(checkoutId, appliedGiftCardId).then(() => { - // assert.ok(false, 'Promise should not resolve'); - // }).catch((error) => { - // assert.equal(error.message, '[{"message":"Applied Gift Card not found","field":null,"code":"GIFT_CARD_NOT_FOUND"}]'); - // }); - // }); - - // test('it resolves with a checkout on Client.checkout#updateShippingAddress', () => { - // const {id: checkoutId} = checkoutShippingAddressUpdateV2Fixture.data.checkoutShippingAddressUpdateV2.checkout; - // const { - // name: shippingName, - // provinceCode: shippingProvince, - // countryCode: shippingCountry - // } = checkoutShippingAddressUpdateV2Fixture.data.checkoutShippingAddressUpdateV2.checkout.shippingAddress; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutShippingAddressUpdateV2Fixture); - - // return client.checkout.updateShippingAddress(checkoutId, shippingAddress).then((checkout) => { - // assert.equal(checkout.id, checkoutId); - // assert.equal(checkout.shippingAddress.name, shippingName); - // assert.equal(checkout.shippingAddress.provinceCode, shippingProvince); - // assert.equal(checkout.shippingAddress.countryCode, shippingCountry); - // assert.ok(fetchMock.done()); - // }); - // }); - - // test('it resolves with user errors on Client.checkout#updateShippingAddress with invalid address', () => { - // const checkoutId = checkoutShippingAddressUpdateV2Fixture.data.checkoutShippingAddressUpdateV2.checkout.id; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutShippingAdddressUpdateV2WithUserErrorsFixture); - - // return client.checkout.updateShippingAddress(checkoutId, shippingAddress).then(() => { - // assert.ok(false, 'Promise should not resolve.'); - // }).catch((error) => { - // assert.equal(error.message, '[{"message":"Country is not supported","field":["shippingAddress","country"],"code":"NOT_SUPPORTED"}]'); - // }); - // }); - - // test('it fetches all paginated line items on the checkout on any checkout mutation', () => { - // const input = { - // lineItems: [ - // {variantId: 'id1', quantity: 5}, - // {variantId: 'id2', quantity: 10}, - // {variantId: 'id3', quantity: 15} - // ] - // }; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutCreateWithPaginatedLineItemsFixture); - // fetchMockPostOnce(fetchMock, apiUrl, secondPageLineItemsFixture); - // fetchMockPostOnce(fetchMock, apiUrl, thirdPageLineItemsFixture); - - // return client.checkout.create(input).then(() => { - // assert.ok(fetchMock.done()); - // }); - // }); - - // test('it rejects checkout mutations that return with a non-null `userErrors` field', () => { - // const checkoutCreateWithUserErrorsFixture = { - // data: { - // checkoutCreate: { - // userErrors: [ - // { - // message: 'Variant is invalid', - // field: [ - // 'lineItems', - // '0', - // 'variantId' - // ] - // } - // ], - // checkout: null - // } - // } - // }; - - // const input = { - // lineItems: [ - // {variantId: 'invalidId', quantity: 5} - // ] - // }; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutCreateWithUserErrorsFixture); - - // return client.checkout.create(input).then(() => { - // assert.ok(false, 'Promise should not resolve'); - // }).catch((error) => { - // assert.equal(error.message, '[{"message":"Variant is invalid","field":["lineItems","0","variantId"]}]'); - // }); - // }); - - // test('it rejects checkout mutations that return with a non-null `errors` without data field', () => { - // const checkoutCreateWithUserErrorsFixture = { - // data: {}, - // errors: [{message: 'Timeout'}] - // }; - - // const input = { - // lineItems: [ - // {variantId: 'invalidId', quantity: 5} - // ] - // }; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutCreateWithUserErrorsFixture); - - // return client.checkout.create(input).then(() => { - // assert.ok(false, 'Promise should not resolve'); - // }).catch((error) => { - // assert.equal(error.message, '[{"message":"Timeout"}]'); - // }); - // }); - - // test('it resolves checkout mutations that return with a non-null `errors` with data field', () => { - // checkoutCreateWithPaginatedLineItemsFixture.errors = [{message: 'Some error'}]; - - // const input = { - // lineItems: [ - // {variantId: 'id1', quantity: 5}, - // {variantId: 'id2', quantity: 10}, - // {variantId: 'id3', quantity: 15} - // ] - // }; - - // fetchMockPostOnce(fetchMock, apiUrl, checkoutCreateWithPaginatedLineItemsFixture); - // fetchMockPostOnce(fetchMock, apiUrl, secondPageLineItemsFixture); - // fetchMockPostOnce(fetchMock, apiUrl, thirdPageLineItemsFixture); - - // return client.checkout.create(input).then((checkout) => { - // assert.ok(checkout.errors); - // assert.ok(fetchMock.done()); - // }).catch(() => { - // assert.equal(false, 'Should resolve'); - // }); - // }); + test('it resolves with a cart on Client.cart#updateBuyerIdentity', () => { + const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; + const buyerIdentity = { + email: 'hi@hello.com' + }; + + fetchMockPostOnce(fetchMock, apiUrl, cartUpdateBuyerIdentityFixture); + + return client.cart.updateBuyerIdentity(cartId, buyerIdentity).then((cart) => { + assert.equal(cart.id, cartUpdateBuyerIdentityFixture.data.cartBuyerIdentityUpdate.cart.id); + assert.equal(cart.buyerIdentity.email, cartUpdateBuyerIdentityFixture.data.cartBuyerIdentityUpdate.cart.buyerIdentity.email); + assert.ok(fetchMock.done()); + }); + }); + + test('it resolves with user errors on Client.cart#updateBuyerIdentity when email is invalid', () => { + const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; + const buyerIdentity = { + email: 'invalid-email' + }; + + fetchMockPostOnce(fetchMock, apiUrl, cartUpdateBuyerIdentityFixtureWithUserErrors); + + return client.cart.updateBuyerIdentity(cartId, buyerIdentity).then(() => { + assert.ok(false, 'Promise should not resolve'); + }).catch((error) => { + assert.equal(error.message, '[{"field":["buyerIdentity","email"],"message":"Email is invalid","code":"INVALID"}]'); + }); + }); + + test('it resolves with a cart on Client.cart#addLineItems', () => { + const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSFA1UFBYVE1ZTkRBVkFHMlNIQ1RENE0y'; + const lineItems = [ + {merchandiseId: 'id1', quantity: 5}, + {merchandiseId: 'id2', quantity: 2} + ]; + + fetchMockPostOnce(fetchMock, apiUrl, cartLineItemsAddFixture); + + return client.cart.addLineItems(cartId, lineItems).then((cart) => { + assert.equal(cart.id, cartId); + assert.ok(fetchMock.done()); + }); + }); + + test('it resolve with user errors on Client.cart#addLineItems when merchandise ID is invalid', () => { + const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSFA1UFBYVE1ZTkRBVkFHMlNIQ1RENE0y'; + const lineItems = [ + {merchandiseId: 'gid://shopify/ProductVariant/invalid-id', quantity: 1} + ]; + + fetchMockPostOnce(fetchMock, apiUrl, cartLineItemsAddFixtureWithUserErrors); + + return client.cart.addLineItems(cartId, lineItems).then(() => { + assert.ok(false, 'Promise should not resolve'); + }).catch((error) => { + assert.equal(error.message, '[{"field":["lines","0","merchandiseId"],"message":"The merchandise with id gid://shopify/ProductVariant/invalid-id does not exist.","code":"INVALID"}]'); + }); + }); + + test('it resolves with a cart on Client.cart#updateLineItems', () => { + const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSFA1UFBYVE1ZTkRBVkFHMlNIQ1RENE0y'; + const lineItems = [ + {merchandiseId: 'id1', quantity: 5}, + {merchandiseId: 'id2', quantity: 2} + ]; + + fetchMockPostOnce(fetchMock, apiUrl, cartLineItemsUpdateFixture); + + return client.cart.updateLineItems(cartId, lineItems).then((cart) => { + assert.equal(cart.id, cartId); + assert.ok(fetchMock.done()); + }); + }); + + test('it resolve with user errors on Client.cart#updateLineItems when merchandise ID is invalid', () => { + const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSFA1UFBYVE1ZTkRBVkFHMlNIQ1RENE0y'; + const lineItems = [ + {merchandiseId: 'gid://shopify/ProductVariant/invalid-id', quantity: 1} + ]; + + fetchMockPostOnce(fetchMock, apiUrl, cartLineItemsUpdateFixtureWithUserErrors); + + return client.cart.updateLineItems(cartId, lineItems).then(() => { + assert.ok(false, 'Promise should not resolve'); + }).catch((error) => { + assert.equal(error.message, '[{"field":["lines","0","merchandiseId"],"message":"The merchandise with id gid://shopify/ProductVariant/invalid-id does not exist.","code":"INVALID"}]'); + }); + }); + + test('it resolves with a cart on Client.cart#removeLineItems', () => { + const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSFA1UFBYVE1ZTkRBVkFHMlNIQ1RENE0y'; + const linesToRemove = ['gid://shopify/CartLine/ff20f2b0-a16f-4127-8f5c-3ae00596fcb9?cart=Z2NwLXVzLWVhc3QxOjAxSFA1UFBYVE1ZTkRBVkFHMlNIQ1RENE0y']; + + fetchMockPostOnce(fetchMock, apiUrl, cartLineItemsRemoveFixture); + + return client.cart.removeLineItems(cartId, linesToRemove).then((cart) => { + assert.equal(cart.id, cartId); + assert.ok(fetchMock.done()); + }); + }); + + test('it resolves with a cart on Client.cart#removeLineItems', () => { + const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSFA1UFBYVE1ZTkRBVkFHMlNIQ1RENE0y'; + const linesToRemove = ['gid://shopify/CartLine/ff20f2b0-a16f-4127-8f5c-3ae00596fcb9?cart=Z2NwLXVzLWVhc3QxOjAxSFA1UFBYVE1ZTkRBVkFHMlNIQ1RENE0y']; + + fetchMockPostOnce(fetchMock, apiUrl, cartLineItemsRemoveFixture); + + return client.cart.removeLineItems(cartId, linesToRemove).then((cart) => { + assert.equal(cart.id, cartId); + assert.ok(fetchMock.done()); + }); + }); + + test('it resolves with a cart on Client.cart#updateDiscountCodes', () => { + const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; + const discountCodes = ['10OFF']; + + fetchMockPostOnce(fetchMock, apiUrl, cartUpdateDiscountCodesFixture); + + return client.cart.updateDiscountCodes(cartId, discountCodes).then((cart) => { + assert.equal(cart.id, cartUpdateDiscountCodesFixture.data.cartDiscountCodesUpdate.cart.id); + assert.ok(fetchMock.done()); + }); + }); + + test('it resolves with a cart on Client.cart#updateNote', () => { + const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; + const note = 'This is a note!'; + + fetchMockPostOnce(fetchMock, apiUrl, cartUpdateNoteFixture); + + return client.cart.updateNote(cartId, note).then((cart) => { + assert.equal(cart.id, cartUpdateNoteFixture.data.cartNoteUpdate.cart.id); + assert.ok(fetchMock.done()); + }); + }); }); From 7fade08b7f6f7b8896ca87995ebf5d69027f6486 Mon Sep 17 00:00:00 2001 From: Scott Dixon Date: Fri, 9 Feb 2024 16:17:57 +1000 Subject: [PATCH 13/19] Bump version --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 2c4b2bd13..9c012ae25 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "shopify-buy", - "version": "2.21.1", + "version": "2.22.0", "description": "The JS Buy SDK is a lightweight library that allows you to build ecommerce into any website. It is based on Shopify's API and provides the ability to retrieve products and collections from your shop, add products to a cart, and checkout.", "main": "index.js", "jsnext:main": "index.es.js", From d11146018fec7751847ce056245aef31d73c8db2 Mon Sep 17 00:00:00 2001 From: Scott Dixon Date: Fri, 9 Feb 2024 16:19:41 +1000 Subject: [PATCH 14/19] Readme tweak --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index f24e6a54e..e060a85fe 100644 --- a/README.md +++ b/README.md @@ -215,7 +215,7 @@ client.cart.create(input).then((cart) => { ### Fetching a Cart ```javascript -const cartId = 'gid://shopify/Cart/Z2NwLWV1cm9wZS13ZXN0NDowMUhOTTI0QVZYV1NOSEVNOUVCQ1JSNUhSVg' +const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR' client.cart.fetch(cartId).then((cart) => { // Do something with the cart From b0f5626e3788c581f2e6895b44d4ea6222542a2d Mon Sep 17 00:00:00 2001 From: Scott Dixon Date: Fri, 4 Oct 2024 16:16:01 +1000 Subject: [PATCH 15/19] cart.updateSelectedDeliveryOptions --- README.md | 11 ++ ...pdate-selected-delivery-options-fixture.js | 103 ++++++++++++++++++ src/cart-resource.js | 22 ++++ test/client-cart-integration-test.js | 13 +++ 4 files changed, 149 insertions(+) create mode 100644 fixtures/cart-update-selected-delivery-options-fixture.js diff --git a/README.md b/README.md index e060a85fe..18e91736c 100644 --- a/README.md +++ b/README.md @@ -299,6 +299,17 @@ client.cart.updateNote(cartId, note).then((cart) => { } ``` +### Updating Cart Selected Delivery Options + +```javascript +const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; +const selectedDeliveryOptions = [{deliveryGroupId: 'gid://shopify/CartDeliveryGroup/269ea2856c41d63937d1ba5212c29713', deliveryOptionHandle: 'standard'}]; + +client.cart.updateSelectedDeliveryOptions(cartId, selectedDeliveryOptions).then((cart) => { + // Do something with the updated cart +}); +``` + ### Redirecting to Checkout To complete the purchase, redirect customers to the `checkoutUrl` property attached to the cart. diff --git a/fixtures/cart-update-selected-delivery-options-fixture.js b/fixtures/cart-update-selected-delivery-options-fixture.js new file mode 100644 index 000000000..40cff57dd --- /dev/null +++ b/fixtures/cart-update-selected-delivery-options-fixture.js @@ -0,0 +1,103 @@ +export default { + data: { + cartSelectedDeliveryOptionsUpdate: { + cart: { + id: 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSFA2NDFLNUM0NVNZRTU4QVA3V0dQRkRE', + createdAt: '2024-02-09T05:04:33Z', + updatedAt: '2024-02-09T05:04:34Z', + lines: { + pageInfo: { + hasNextPage: false, + hasPreviousPage: false + }, + edges: [ + { + node: { + __typename: 'CartLine', + id: 'gid://shopify/CartLine/707fa759-932e-4649-b5bb-a4a1c5b1dc22?cart=Z2NwLXVzLWVhc3QxOjAxSFA2NDFLNUM0NVNZRTU4QVA3V0dQRkRE', + merchandise: { + id: 'gid://shopify/ProductVariant/13666012889144' + }, + quantity: 1, + attributes: [], + cost: { + totalAmount: { + amount: '5.15', + currencyCode: 'AUD' + }, + subtotalAmount: { + amount: '5.15', + currencyCode: 'AUD' + }, + amountPerQuantity: { + amount: '5.15', + currencyCode: 'AUD' + }, + compareAtAmountPerQuantity: null + }, + discountAllocations: [], + sellingPlanAllocation: null + } + } + ] + }, + attributes: [], + cost: { + totalAmount: { + amount: '5.09', + currencyCode: 'AUD' + }, + subtotalAmount: { + amount: '5.15', + currencyCode: 'AUD' + }, + totalTaxAmount: { + amount: '0.46', + currencyCode: 'AUD' + }, + totalDutyAmount: null + }, + checkoutUrl: 'https://myshopify.com/cart/c/Z2NwLXVzLWVhc3QxOjAxSFA2NDFLNUM0NVNZRTU4QVA3V0dQRkRE?key=c546cc21e716cf73d7ef910123b71a1c', + discountCodes: [], + buyerIdentity: { + countryCode: null, + walletPreferences: [], + email: null, + phone: null, + customer: null, + deliveryAddressPreferences: [] + }, + deliveryGroups: { + pageInfo: { + hasNextPage: false, + hasPreviousPage: false + }, + edges: [ + { + node: { + id: 'gid://shopify/CartDeliveryGroup/269ea2856c41d63937d1ba5212c29713?cart=', + selectedDeliveryOption: { + code: 'Standard', + description: '', + title: 'Standard' + }, + deliveryOptions: [ + { + handle: '552e8d727b08fadcf90f688b26bbfe29', + title: 'Standard' + }, + { + handle: 'aaea08799167c7e60b665b00d7e6894e', + title: 'Express' + } + ] + } + } + ] + }, + note: '' + }, + userErrors: [] + } + } +} diff --git a/src/cart-resource.js b/src/cart-resource.js index faba82d1e..854c131a7 100644 --- a/src/cart-resource.js +++ b/src/cart-resource.js @@ -12,6 +12,7 @@ import cartLinesAddMutation from './graphql/cartLinesAddMutation.graphql'; import cartLinesRemoveMutation from './graphql/cartLinesRemoveMutation.graphql'; import cartLinesUpdateMutation from './graphql/cartLinesUpdateMutation.graphql'; import cartNoteUpdateMutation from './graphql/cartNoteUpdateMutation.graphql'; +import cartSelectedDeliveryOptionsUpdateMutation from './graphql/cartSelectedDeliveryOptionsUpdateMutation.graphql'; /** * The JS Buy SDK cart resource @@ -221,6 +222,27 @@ class CartResource extends Resource { .send(cartNoteUpdateMutation, {cartId, note}) .then(handleCartMutation('cartNoteUpdate', this.graphQLClient)); } + + /** + * Updates the selected delivery options on a cart + * + * @example + * const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; + * const selectedDeliveryOptions = [{deliveryGroupId: 'gid://shopify/CartDeliveryGroup/269ea2856c41d63937d1ba5212c29713', deliveryOptionHandle: 'standard'}]; + * + * client.cart.updateSelectedDeliveryOptions(cartId, selectedDeliveryOptions).then((cart) => { + * // Do something with the updated cart + * }); + * + * @param {String} cartId The ID of the cart to update. + * @param {Object[]} [selectedDeliveryOptions] The selected delivery options. + * @return {Promise|GraphModel} A promise resolving with the updated cart. + * */ + updateSelectedDeliveryOptions(cartId, selectedDeliveryOptions = []) { + return this.graphQLClient + .send(cartSelectedDeliveryOptionsUpdateMutation, {cartId, selectedDeliveryOptions}) + .then(handleCartMutation('cartSelectedDeliveryOptionsUpdate', this.graphQLClient)); + } } export default CartResource; diff --git a/test/client-cart-integration-test.js b/test/client-cart-integration-test.js index f075c79da..7033397aa 100644 --- a/test/client-cart-integration-test.js +++ b/test/client-cart-integration-test.js @@ -18,6 +18,7 @@ import cartLineItemsUpdateFixtureWithUserErrors from '../fixtures/cart-line-item import cartLineItemsRemoveFixture from '../fixtures/cart-line-items-remove-fixture'; import cartUpdateDiscountCodesFixture from '../fixtures/cart-update-discount-codes-fixture'; import cartUpdateNoteFixture from '../fixtures/cart-update-note-fixture'; +import cartUpdateSelectedDeliveryOptionsFixture from '../fixtures/cart-update-selected-delivery-options-fixture'; suite('client-cart-integration-test', () => { const domain = 'client-integration-tests.myshopify.io'; @@ -252,4 +253,16 @@ suite('client-cart-integration-test', () => { assert.ok(fetchMock.done()); }); }); + + test('it resolves with a cart on Client.cart#updateSelectedDeliveryOptions', () => { + const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; + const selectedDeliveryOptions = [{deliveryGroupId: 'gid://shopify/CartDeliveryGroup/269ea2856c41d63937d1ba5212c29713', deliveryOptionHandle: 'standard'}]; + + fetchMockPostOnce(fetchMock, apiUrl, cartUpdateSelectedDeliveryOptionsFixture); + + return client.cart.updateSelectedDeliveryOptions(cartId, selectedDeliveryOptions).then((cart) => { + assert.equal(cart.id, cartUpdateSelectedDeliveryOptionsFixture.data.cartSelectedDeliveryOptionsUpdate.cart.id); + assert.ok(fetchMock.done()); + }); + }); }); From 5c9b5dc1211029562058b8b9078b05a56d6dc725 Mon Sep 17 00:00:00 2001 From: Scott Dixon Date: Fri, 4 Oct 2024 17:01:35 +1000 Subject: [PATCH 16/19] Update schema to 2024-07 --- package.json | 2 +- schema.json | 26675 +++++++++++++++++++++++++------------------------ 2 files changed, 13440 insertions(+), 13237 deletions(-) diff --git a/package.json b/package.json index 9c012ae25..18dd52c48 100644 --- a/package.json +++ b/package.json @@ -28,7 +28,7 @@ "lint": "eslint --max-warnings 0 -c .eslintrc.json $(yarn run lint:reporter-args 2>&1 >/dev/null) src/ test/", "lint:reporter-args": "test -n \"${CI}\" && >&2 echo -o $CIRCLE_TEST_REPORTS/junit/eslint.xml -f junit", "print-start-message": "wait-on file:.tmp/test/index.html file:.tmp/test/tests.js tcp:35729 tcp:4200 && echo \"\n\n⚡️⚡️⚡️ Good to go at http://localhost:4200 ⚡️⚡️⚡️\"", - "schema:fetch": "graphql-js-schema-fetch --url 'https://graphql.myshopify.com/api/2023-10/graphql.json' --header 'X-Shopify-Storefront-Access-Token: 595005d0c565f6969eece280de85edb5' | jq '.' > schema.json", + "schema:fetch": "graphql-js-schema-fetch --url 'https://graphql.myshopify.com/api/2024-07/graphql.json' --header 'X-Shopify-Storefront-Access-Token: 595005d0c565f6969eece280de85edb5' | jq '.' > schema.json", "minify-umd:optimized": "babel-minify index.umd.js > index.umd.min.js", "minify-umd:unoptimized": "babel-minify index.unoptimized.umd.js > index.unoptimized.umd.min.js" }, diff --git a/schema.json b/schema.json index f9eca2afc..116a25a29 100644 --- a/schema.json +++ b/schema.json @@ -48,7 +48,7 @@ }, { "name": "supported", - "description": "Whether the version is actively supported by Shopify. Supported API versions\nare guaranteed to be stable. Unsupported API versions include unstable,\nrelease candidate, and end-of-life versions that are marked as unsupported.\nFor more information, refer to\n[Versioning](https://shopify.dev/api/usage/versioning).\n", + "description": "Whether the version is actively supported by Shopify. Supported API versions are guaranteed to be stable. Unsupported API versions include unstable, release candidate, and end-of-life versions that are marked as unsupported. For more information, refer to [Versioning](https://shopify.dev/api/usage/versioning).", "args": [], "type": { "kind": "NON_NULL", @@ -594,22 +594,18 @@ "description": "Returns a metafield found by namespace and key.", "args": [ { - "name": "key", - "description": "The identifier for the metafield.", + "name": "namespace", + "description": "The container the metafield belongs to. If omitted, the app-reserved namespace will be used.", "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } + "kind": "SCALAR", + "name": "String", + "ofType": null }, "defaultValue": null }, { - "name": "namespace", - "description": "The container the metafield belongs to.", + "name": "key", + "description": "The identifier for the metafield.", "type": { "kind": "NON_NULL", "name": null, @@ -636,7 +632,7 @@ "args": [ { "name": "identifiers", - "description": "The list of metafields to retrieve by namespace and key.", + "description": "The list of metafields to retrieve by namespace and key.\n\nThe input must not contain more than `250` values.", "type": { "kind": "NON_NULL", "name": null, @@ -755,7 +751,7 @@ }, { "name": "trackingParameters", - "description": "A URL parameters to be added to a page URL when it is linked from a GraphQL result. This allows for tracking the origin of the traffic.", + "description": "URL parameters to be added to a page URL to track the origin of on-site search traffic for [analytics reporting](https://help.shopify.com/manual/reports-and-analytics/shopify-reports/report-types/default-reports/behaviour-reports). Returns a result when accessed through the [search](https://shopify.dev/docs/api/storefront/current/queries/search) or [predictiveSearch](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries, otherwise returns null.", "args": [], "type": { "kind": "SCALAR", @@ -1005,18 +1001,6 @@ "inputFields": null, "interfaces": null, "enumValues": [ - { - "name": "ID", - "description": "Sort by the `id` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RELEVANCE", - "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", - "isDeprecated": false, - "deprecationReason": null - }, { "name": "TITLE", "description": "Sort by the `title` value.", @@ -1046,6 +1030,18 @@ "description": "Sort by the `published_at` value.", "isDeprecated": false, "deprecationReason": null + }, + { + "name": "ID", + "description": "Sort by the `id` value.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "RELEVANCE", + "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", + "isDeprecated": false, + "deprecationReason": null } ], "possibleTypes": null @@ -1053,11 +1049,11 @@ { "kind": "OBJECT", "name": "Attribute", - "description": "Represents a generic custom attribute.", + "description": "Represents a generic custom attribute, such as whether an order is a customer's first.", "fields": [ { "name": "key", - "description": "Key or name of the attribute.", + "description": "The key or name of the attribute. For example, `\"customersFirstOrder\"`.\n", "args": [], "type": { "kind": "NON_NULL", @@ -1073,7 +1069,7 @@ }, { "name": "value", - "description": "Value of the attribute.", + "description": "The value of the attribute. For example, `\"true\"`.\n", "args": [], "type": { "kind": "SCALAR", @@ -1225,57 +1221,10 @@ "enumValues": null, "possibleTypes": null }, - { - "kind": "OBJECT", - "name": "AvailableShippingRates", - "description": "A collection of available shipping rates for a checkout.", - "fields": [ - { - "name": "ready", - "description": "Whether or not the shipping rates are ready.\nThe `shippingRates` field is `null` when this value is `false`.\nThis field should be polled until its value becomes `true`.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "shippingRates", - "description": "The fetched shipping rates. `null` until the `ready` field is `true`.", - "args": [], - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ShippingRate", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, { "kind": "INTERFACE", "name": "BaseCartLine", - "description": "An object with an ID field to support global identification, in accordance with the\n[Relay specification](https://relay.dev/graphql/objectidentification.htm#sec-Node-Interface).\nThis interface is used by the [node](https://shopify.dev/api/admin-graphql/unstable/queries/node)\nand [nodes](https://shopify.dev/api/admin-graphql/unstable/queries/nodes) queries.\n", + "description": "Represents a cart line common fields.", "fields": [ { "name": "attribute", @@ -1661,16 +1610,6 @@ }, "defaultValue": null }, - { - "name": "sortKey", - "description": "Sort the underlying list by the given key.", - "type": { - "kind": "ENUM", - "name": "ArticleSortKeys", - "ofType": null - }, - "defaultValue": "ID" - }, { "name": "reverse", "description": "Reverse the order of the underlying list.", @@ -1681,9 +1620,19 @@ }, "defaultValue": "false" }, + { + "name": "sortKey", + "description": "Sort the underlying list by the given key.", + "type": { + "kind": "ENUM", + "name": "ArticleSortKeys", + "ofType": null + }, + "defaultValue": "ID" + }, { "name": "query", - "description": "Supported filter parameters:\n - `author`\n - `blog_title`\n - `created_at`\n - `tag`\n - `tag_not`\n - `updated_at`\n\nSee the detailed [search syntax](https://shopify.dev/api/usage/search-syntax)\nfor more information about using filters.\n", + "description": "Apply one or multiple filters to the query.\n| name | description | acceptable_values | default_value | example_use |\n| ---- | ---- | ---- | ---- | ---- |\n| author |\n| blog_title |\n| created_at |\n| tag |\n| tag_not |\n| updated_at |\nRefer to the detailed [search syntax](https://shopify.dev/api/usage/search-syntax) for more information about using filters.\n", "type": { "kind": "SCALAR", "name": "String", @@ -1765,22 +1714,18 @@ "description": "Returns a metafield found by namespace and key.", "args": [ { - "name": "key", - "description": "The identifier for the metafield.", + "name": "namespace", + "description": "The container the metafield belongs to. If omitted, the app-reserved namespace will be used.", "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } + "kind": "SCALAR", + "name": "String", + "ofType": null }, "defaultValue": null }, { - "name": "namespace", - "description": "The container the metafield belongs to.", + "name": "key", + "description": "The identifier for the metafield.", "type": { "kind": "NON_NULL", "name": null, @@ -1807,7 +1752,7 @@ "args": [ { "name": "identifiers", - "description": "The list of metafields to retrieve by namespace and key.", + "description": "The list of metafields to retrieve by namespace and key.\n\nThe input must not contain more than `250` values.", "type": { "kind": "NON_NULL", "name": null, @@ -2033,26 +1978,26 @@ "interfaces": null, "enumValues": [ { - "name": "ID", - "description": "Sort by the `id` value.", + "name": "HANDLE", + "description": "Sort by the `handle` value.", "isDeprecated": false, "deprecationReason": null }, { - "name": "RELEVANCE", - "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", + "name": "TITLE", + "description": "Sort by the `title` value.", "isDeprecated": false, "deprecationReason": null }, { - "name": "TITLE", - "description": "Sort by the `title` value.", + "name": "ID", + "description": "Sort by the `id` value.", "isDeprecated": false, "deprecationReason": null }, { - "name": "HANDLE", - "description": "Sort by the `handle` value.", + "name": "RELEVANCE", + "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", "isDeprecated": false, "deprecationReason": null } @@ -2250,6 +2195,41 @@ "enumValues": null, "possibleTypes": null }, + { + "kind": "INPUT_OBJECT", + "name": "BuyerInput", + "description": "The input fields for obtaining the buyer's identity.\n", + "fields": null, + "inputFields": [ + { + "name": "customerAccessToken", + "description": "The storefront customer access token retrieved from the [Customer Accounts API](https://shopify.dev/docs/api/customer/reference/mutations/storefrontCustomerAccessTokenCreate).", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "companyLocationId", + "description": "The identifier of the company location.", + "type": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + }, + "defaultValue": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, { "kind": "ENUM", "name": "CardBrand", @@ -2302,6 +2282,30 @@ "name": "Cart", "description": "A cart represents the merchandise that a buyer intends to purchase,\nand the estimated cost associated with the cart. Learn how to\n[interact with a cart](https://shopify.dev/custom-storefronts/internationalization/international-pricing)\nduring a customer's session.\n", "fields": [ + { + "name": "appliedGiftCards", + "description": "The gift cards that have been applied to the cart.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "AppliedGiftCard", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, { "name": "attribute", "description": "An attribute associated with the cart.", @@ -2387,7 +2391,7 @@ }, { "name": "cost", - "description": "The estimated costs that the buyer will pay at checkout. The costs are subject\nto change and changes will be reflected at checkout. The `cost` field uses the\n`buyerIdentity` field to determine [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing).\n", + "description": "The estimated costs that the buyer will pay at checkout. The costs are subject to change and changes will be reflected at checkout. The `cost` field uses the `buyerIdentity` field to determine [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing).", "args": [], "type": { "kind": "NON_NULL", @@ -2470,6 +2474,16 @@ "ofType": null }, "defaultValue": "false" + }, + { + "name": "withCarrierRates", + "description": "Whether to include [carrier-calculated delivery rates](https://help.shopify.com/en/manual/shipping/setting-up-and-managing-your-shipping/enabling-shipping-carriers) in the response.\n\nBy default, only static shipping rates are returned. This argument requires mandatory usage of the [`@defer` directive](https://shopify.dev/docs/api/storefront#directives).\n\nFor more information, refer to [fetching carrier-calculated rates for the cart using `@defer`](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/defer#fetching-carrier-calculated-rates-for-the-cart-using-defer).\n", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false" } ], "type": { @@ -2534,7 +2548,7 @@ }, { "name": "estimatedCost", - "description": "The estimated costs that the buyer will pay at checkout.\nThe estimated costs are subject to change and changes will be reflected at checkout.\nThe `estimatedCost` field uses the `buyerIdentity` field to determine\n[international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing).\n", + "description": "The estimated costs that the buyer will pay at checkout. The estimated costs are subject to change and changes will be reflected at checkout. The `estimatedCost` field uses the `buyerIdentity` field to determine [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing).", "args": [], "type": { "kind": "NON_NULL", @@ -2636,22 +2650,18 @@ "description": "Returns a metafield found by namespace and key.", "args": [ { - "name": "key", - "description": "The identifier for the metafield.", + "name": "namespace", + "description": "The container the metafield belongs to. If omitted, the app-reserved namespace will be used.", "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } + "kind": "SCALAR", + "name": "String", + "ofType": null }, "defaultValue": null }, { - "name": "namespace", - "description": "The container the metafield belongs to.", + "name": "key", + "description": "The identifier for the metafield.", "type": { "kind": "NON_NULL", "name": null, @@ -2678,7 +2688,7 @@ "args": [ { "name": "identifiers", - "description": "The list of metafields to retrieve by namespace and key.", + "description": "The list of metafields to retrieve by namespace and key.\n\nThe input must not contain more than `250` values.", "type": { "kind": "NON_NULL", "name": null, @@ -2844,6 +2854,22 @@ "isDeprecated": false, "deprecationReason": null }, + { + "name": "targetType", + "description": "The type of line that the discount is applicable towards.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "DiscountApplicationTargetType", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, { "name": "title", "description": "The title of the allocated discount.", @@ -2872,6 +2898,53 @@ "enumValues": null, "possibleTypes": null }, + { + "kind": "OBJECT", + "name": "CartBillingAddressUpdatePayload", + "description": "Return type for `cartBillingAddressUpdate` mutation.", + "fields": [ + { + "name": "cart", + "description": "The updated cart.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "Cart", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "userErrors", + "description": "The list of errors that occurred from executing the mutation.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "CartUserError", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, { "kind": "OBJECT", "name": "CartBuyerIdentity", @@ -2950,25 +3023,25 @@ "deprecationReason": null }, { - "name": "walletPreferences", - "description": "A set of wallet preferences tied to the buyer that is interacting with the cart.\nPreferences can be used to populate relevant payment fields in the checkout flow.\n", + "name": "preferences", + "description": "A set of preferences tied to the buyer interacting with the cart. Preferences are used to prefill fields in at checkout to streamline information collection. \nPreferences are not synced back to the cart if they are overwritten.\n", "args": [], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - } - } + "kind": "OBJECT", + "name": "CartPreferences", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "purchasingCompany", + "description": "The purchasing company associated with the cart.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "PurchasingCompany", + "ofType": null }, "isDeprecated": false, "deprecationReason": null @@ -2986,18 +3059,18 @@ "fields": null, "inputFields": [ { - "name": "countryCode", - "description": "The country where the buyer is located.", + "name": "email", + "description": "The email address of the buyer that is interacting with the cart.", "type": { - "kind": "ENUM", - "name": "CountryCode", + "kind": "SCALAR", + "name": "String", "ofType": null }, "defaultValue": null }, { - "name": "customerAccessToken", - "description": "The access token used to identify the customer associated with the cart.", + "name": "phone", + "description": "The phone number of the buyer that is interacting with the cart.", "type": { "kind": "SCALAR", "name": "String", @@ -3006,36 +3079,28 @@ "defaultValue": null }, { - "name": "deliveryAddressPreferences", - "description": "An ordered set of delivery addresses tied to the buyer that is interacting with the cart.\nThe rank of the preferences is determined by the order of the addresses in the array. Preferences\ncan be used to populate relevant fields in the checkout flow.\n", + "name": "companyLocationId", + "description": "The company location of the buyer that is interacting with the cart.", "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "DeliveryAddressInput", - "ofType": null - } - } + "kind": "SCALAR", + "name": "ID", + "ofType": null }, "defaultValue": null }, { - "name": "email", - "description": "The email address of the buyer that is interacting with the cart.", + "name": "countryCode", + "description": "The country where the buyer is located.", "type": { - "kind": "SCALAR", - "name": "String", + "kind": "ENUM", + "name": "CountryCode", "ofType": null }, "defaultValue": null }, { - "name": "phone", - "description": "The phone number of the buyer that is interacting with the cart.", + "name": "customerAccessToken", + "description": "The access token used to identify the customer associated with the cart.", "type": { "kind": "SCALAR", "name": "String", @@ -3044,8 +3109,8 @@ "defaultValue": null }, { - "name": "walletPreferences", - "description": "A set of wallet preferences tied to the buyer that is interacting with the cart.\nPreferences can be used to populate relevant payment fields in the checkout flow.\n Accepted value: `[\"shop_pay\"]`.\n", + "name": "deliveryAddressPreferences", + "description": "An ordered set of delivery addresses tied to the buyer that is interacting with the cart.\nThe rank of the preferences is determined by the order of the addresses in the array. Preferences\ncan be used to populate relevant fields in the checkout flow.\n\nThe input must not contain more than `250` values.", "type": { "kind": "LIST", "name": null, @@ -3053,13 +3118,23 @@ "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "INPUT_OBJECT", + "name": "DeliveryAddressInput", "ofType": null } } }, "defaultValue": null + }, + { + "name": "preferences", + "description": "A set of preferences tied to the buyer interacting with the cart. Preferences are used to prefill fields in at checkout to streamline information collection. \nPreferences are not synced back to the cart if they are overwritten.\n", + "type": { + "kind": "INPUT_OBJECT", + "name": "CartPreferencesInput", + "ofType": null + }, + "defaultValue": null } ], "interfaces": null, @@ -3166,6 +3241,22 @@ }, "isDeprecated": false, "deprecationReason": null + }, + { + "name": "targetType", + "description": "The type of line that the discount is applicable towards.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "DiscountApplicationTargetType", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null } ], "inputFields": null, @@ -3437,7 +3528,7 @@ "fields": [ { "name": "checkoutChargeAmount", - "description": "The estimated amount, before taxes and discounts, for the customer to pay at\ncheckout. The checkout charge amount doesn't include any deferred payments\nthat'll be paid at a later date. If the cart has no deferred payments, then\nthe checkout charge amount is equivalent to `subtotalAmount`.\n", + "description": "The estimated amount, before taxes and discounts, for the customer to pay at checkout. The checkout charge amount doesn't include any deferred payments that'll be paid at a later date. If the cart has no deferred payments, then the checkout charge amount is equivalent to `subtotalAmount`.", "args": [], "type": { "kind": "NON_NULL", @@ -3645,6 +3736,22 @@ "isDeprecated": false, "deprecationReason": null }, + { + "name": "targetType", + "description": "The type of line that the discount is applicable towards.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "DiscountApplicationTargetType", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, { "name": "title", "description": "The title of the allocated discount.", @@ -3673,6 +3780,118 @@ "enumValues": null, "possibleTypes": null }, + { + "kind": "OBJECT", + "name": "CartDeliveryCoordinatesPreference", + "description": "Preferred location used to find the closest pick up point based on coordinates.", + "fields": [ + { + "name": "countryCode", + "description": "The two-letter code for the country of the preferred location.\n\nFor example, US.\n", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "CountryCode", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "latitude", + "description": "The geographic latitude for a given location. Coordinates are required in order to set pickUpHandle for pickup points.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Float", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "longitude", + "description": "The geographic longitude for a given location. Coordinates are required in order to set pickUpHandle for pickup points.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Float", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "CartDeliveryCoordinatesPreferenceInput", + "description": "Preferred location used to find the closest pick up point based on coordinates.", + "fields": null, + "inputFields": [ + { + "name": "latitude", + "description": "The geographic latitude for a given location. Coordinates are required in order to set pickUpHandle for pickup points.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Float", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "longitude", + "description": "The geographic longitude for a given location. Coordinates are required in order to set pickUpHandle for pickup points.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Float", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "countryCode", + "description": "The two-letter code for the country of the preferred location.\n\nFor example, US.\n", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "CountryCode", + "ofType": null + } + }, + "defaultValue": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, { "kind": "OBJECT", "name": "CartDeliveryGroup", @@ -3785,6 +4004,22 @@ "isDeprecated": false, "deprecationReason": null }, + { + "name": "groupType", + "description": "The type of merchandise in the delivery group.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "CartDeliveryGroupType", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, { "name": "id", "description": "The ID for the delivery group.", @@ -3937,6 +4172,29 @@ "enumValues": null, "possibleTypes": null }, + { + "kind": "ENUM", + "name": "CartDeliveryGroupType", + "description": "Defines what type of merchandise is in the delivery group.\n", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "SUBSCRIPTION", + "description": "The delivery group only contains subscription merchandise.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ONE_TIME_PURCHASE", + "description": "The delivery group only contains merchandise that is either a one time purchase or a first delivery of\nsubscription merchandise.\n", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, { "kind": "OBJECT", "name": "CartDeliveryOption", @@ -4032,6 +4290,134 @@ "enumValues": null, "possibleTypes": null }, + { + "kind": "OBJECT", + "name": "CartDeliveryPreference", + "description": "A set of preferences tied to the buyer interacting with the cart. Preferences are used to prefill fields in at checkout to streamline information collection. \nPreferences are not synced back to the cart if they are overwritten.\n", + "fields": [ + { + "name": "coordinates", + "description": "Preferred location used to find the closest pick up point based on coordinates.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "CartDeliveryCoordinatesPreference", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "deliveryMethod", + "description": "The preferred delivery methods such as shipping, local pickup or through pickup points.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "PreferenceDeliveryMethodType", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "pickupHandle", + "description": "The pickup handle prefills checkout fields with the location for either local pickup or pickup points delivery methods.\nIt accepts both location ID for local pickup and external IDs for pickup points.\n", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "CartDeliveryPreferenceInput", + "description": "Delivery preferences can be used to prefill the delivery section at checkout.", + "fields": null, + "inputFields": [ + { + "name": "deliveryMethod", + "description": "The preferred delivery methods such as shipping, local pickup or through pickup points.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "PreferenceDeliveryMethodType", + "ofType": null + } + } + }, + "defaultValue": null + }, + { + "name": "pickupHandle", + "description": "The pickup handle prefills checkout fields with the location for either local pickup or pickup points delivery methods.\nIt accepts both location ID for local pickup and external IDs for pickup points.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + }, + "defaultValue": null + }, + { + "name": "coordinates", + "description": "The coordinates of a delivery location in order of preference.", + "type": { + "kind": "INPUT_OBJECT", + "name": "CartDeliveryCoordinatesPreferenceInput", + "ofType": null + }, + "defaultValue": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, { "kind": "INPUT_OBJECT", "name": "CartDirectPaymentMethodInput", @@ -4101,6 +4487,22 @@ }, "isDeprecated": false, "deprecationReason": null + }, + { + "name": "targetType", + "description": "The type of line that the discount is applicable towards.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "DiscountApplicationTargetType", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null } ], "inputFields": null, @@ -4252,6 +4654,12 @@ "isDeprecated": false, "deprecationReason": null }, + { + "name": "NOTE_TOO_LONG", + "description": "The note length must be below the specified maximum.", + "isDeprecated": false, + "deprecationReason": null + }, { "name": "INVALID_DELIVERY_GROUP", "description": "Delivery group was not found in cart.", @@ -4271,14 +4679,14 @@ "deprecationReason": null }, { - "name": "INVALID_PAYMENT_EMPTY_CART", - "description": "Cannot update payment on an empty cart", + "name": "PAYMENT_METHOD_NOT_SUPPORTED", + "description": "The payment method is not supported.", "isDeprecated": false, "deprecationReason": null }, { - "name": "PAYMENT_METHOD_NOT_SUPPORTED", - "description": "The payment method is not supported.", + "name": "INVALID_PAYMENT_EMPTY_CART", + "description": "Cannot update payment on an empty cart", "isDeprecated": false, "deprecationReason": null }, @@ -4293,6 +4701,102 @@ "description": "The metafields were not valid.", "isDeprecated": false, "deprecationReason": null + }, + { + "name": "MISSING_CUSTOMER_ACCESS_TOKEN", + "description": "The customer access token is required when setting a company location.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "INVALID_COMPANY_LOCATION", + "description": "Company location not found or not allowed.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "INVALID_INCREMENT", + "description": "The quantity must be a multiple of the specified increment.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "MINIMUM_NOT_MET", + "description": "The quantity must be above the specified minimum for the item.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "MAXIMUM_EXCEEDED", + "description": "The quantity must be below the specified maximum for the item.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ADDRESS_FIELD_IS_REQUIRED", + "description": "The specified address field is required.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ADDRESS_FIELD_IS_TOO_LONG", + "description": "The specified address field is too long.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ADDRESS_FIELD_CONTAINS_EMOJIS", + "description": "The specified address field contains emojis.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ADDRESS_FIELD_CONTAINS_HTML_TAGS", + "description": "The specified address field contains HTML tags.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ADDRESS_FIELD_CONTAINS_URL", + "description": "The specified address field contains a URL.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ADDRESS_FIELD_DOES_NOT_MATCH_EXPECTED_PATTERN", + "description": "The specified address field does not match the expected pattern.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "INVALID_ZIP_CODE_FOR_PROVINCE", + "description": "The given zip code is invalid for the provided province.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "INVALID_ZIP_CODE_FOR_COUNTRY", + "description": "The given zip code is invalid for the provided country.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ZIP_CODE_NOT_SUPPORTED", + "description": "The given zip code is unsupported.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "PROVINCE_NOT_FOUND", + "description": "The given province cannot be found.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "UNSPECIFIED_ADDRESS_ERROR", + "description": "A general error occurred during address validation.", + "isDeprecated": false, + "deprecationReason": null } ], "possibleTypes": null @@ -4300,7 +4804,7 @@ { "kind": "OBJECT", "name": "CartEstimatedCost", - "description": "The estimated costs that the buyer will pay at checkout.\nThe estimated cost uses\n[`CartBuyerIdentity`](https://shopify.dev/api/storefront/reference/cart/cartbuyeridentity)\nto determine\n[international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing).\n", + "description": "The estimated costs that the buyer will pay at checkout. The estimated cost uses [`CartBuyerIdentity`](https://shopify.dev/api/storefront/reference/cart/cartbuyeridentity) to determine [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing).", "fields": [ { "name": "checkoutChargeAmount", @@ -4405,6 +4909,53 @@ "enumValues": null, "possibleTypes": null }, + { + "kind": "OBJECT", + "name": "CartGiftCardCodesUpdatePayload", + "description": "Return type for `cartGiftCardCodesUpdate` mutation.", + "fields": [ + { + "name": "cart", + "description": "The updated cart.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "Cart", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "userErrors", + "description": "The list of errors that occurred from executing the mutation.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "CartUserError", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, { "kind": "INPUT_OBJECT", "name": "CartInput", @@ -4413,7 +4964,7 @@ "inputFields": [ { "name": "attributes", - "description": "An array of key-value pairs that contains additional information about the cart.", + "description": "An array of key-value pairs that contains additional information about the cart.\n\nThe input must not contain more than `250` values.", "type": { "kind": "LIST", "name": null, @@ -4429,9 +4980,27 @@ }, "defaultValue": null }, + { + "name": "lines", + "description": "A list of merchandise lines to add to the cart.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "CartLineInput", + "ofType": null + } + } + }, + "defaultValue": null + }, { "name": "discountCodes", - "description": "The case-insensitive discount codes that the customer added at checkout.\n", + "description": "The case-insensitive discount codes that the customer added at checkout.\n\nThe input must not contain more than `250` values.", "type": { "kind": "LIST", "name": null, @@ -4448,8 +5017,8 @@ "defaultValue": null }, { - "name": "lines", - "description": "A list of merchandise lines to add to the cart.", + "name": "giftCardCodes", + "description": "The case-insensitive gift card codes.\n\nThe input must not contain more than `250` values.", "type": { "kind": "LIST", "name": null, @@ -4457,8 +5026,8 @@ "kind": "NON_NULL", "name": null, "ofType": { - "kind": "INPUT_OBJECT", - "name": "CartLineInput", + "kind": "SCALAR", + "name": "String", "ofType": null } } @@ -4487,7 +5056,7 @@ }, { "name": "metafields", - "description": "The metafields to associate with this cart.", + "description": "The metafields to associate with this cart.\n\nThe input must not contain more than `250` values.", "type": { "kind": "LIST", "name": null, @@ -4529,8 +5098,8 @@ "defaultValue": null }, { - "name": "type", - "description": "The type of data that the cart metafield stores.\nThe type of data must be a [supported type](https://shopify.dev/apps/metafields/types).\n", + "name": "value", + "description": "The data to store in the cart metafield. The data is always stored as a string, regardless of the metafield's type.\n", "type": { "kind": "NON_NULL", "name": null, @@ -4543,8 +5112,8 @@ "defaultValue": null }, { - "name": "value", - "description": "The data to store in the cart metafield. The data is always stored as a string, regardless of the metafield's type.\n", + "name": "type", + "description": "The type of data that the cart metafield stores.\nThe type of data must be a [supported type](https://shopify.dev/apps/metafields/types).\n", "type": { "kind": "NON_NULL", "name": null, @@ -4900,7 +5469,7 @@ "inputFields": [ { "name": "attributes", - "description": "An array of key-value pairs that contains additional information about the merchandise line.", + "description": "An array of key-value pairs that contains additional information about the merchandise line.\n\nThe input must not contain more than `250` values.", "type": { "kind": "LIST", "name": null, @@ -4976,28 +5545,28 @@ "defaultValue": null }, { - "name": "merchandiseId", - "description": "The ID of the merchandise for the line item.", + "name": "quantity", + "description": "The quantity of the line item.", "type": { "kind": "SCALAR", - "name": "ID", + "name": "Int", "ofType": null }, "defaultValue": null }, { - "name": "quantity", - "description": "The quantity of the line item.", + "name": "merchandiseId", + "description": "The ID of the merchandise for the line item.", "type": { "kind": "SCALAR", - "name": "Int", + "name": "ID", "ofType": null }, "defaultValue": null }, { "name": "attributes", - "description": "An array of key-value pairs that contains additional information about the merchandise line.", + "description": "An array of key-value pairs that contains additional information about the merchandise line.\n\nThe input must not contain more than `250` values.", "type": { "kind": "LIST", "name": null, @@ -5262,36 +5831,36 @@ "fields": null, "inputFields": [ { - "name": "key", - "description": "The key name of the cart metafield.", + "name": "ownerId", + "description": "The ID of the cart resource.", "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "String", + "name": "ID", "ofType": null } }, "defaultValue": null }, { - "name": "ownerId", - "description": "The ID of the cart resource.", + "name": "key", + "description": "The key name of the cart metafield.", "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "ID", + "name": "String", "ofType": null } }, "defaultValue": null }, { - "name": "type", - "description": "The type of data that the cart metafield stores.\nThe type of data must be a [supported type](https://shopify.dev/apps/metafields/types).\n", + "name": "value", + "description": "The data to store in the cart metafield. The data is always stored as a string, regardless of the metafield's type.\n", "type": { "kind": "NON_NULL", "name": null, @@ -5304,8 +5873,8 @@ "defaultValue": null }, { - "name": "value", - "description": "The data to store in the cart metafield. The data is always stored as a string, regardless of the metafield's type.\n", + "name": "type", + "description": "The type of data that the cart metafield stores.\nThe type of data must be a [supported type](https://shopify.dev/apps/metafields/types).\n", "type": { "kind": "NON_NULL", "name": null, @@ -5536,6 +6105,88 @@ "enumValues": null, "possibleTypes": null }, + { + "kind": "OBJECT", + "name": "CartPreferences", + "description": "A set of preferences tied to the buyer interacting with the cart. Preferences are used to prefill fields in at checkout to streamline information collection. \nPreferences are not synced back to the cart if they are overwritten.\n", + "fields": [ + { + "name": "delivery", + "description": "Delivery preferences can be used to prefill the delivery section in at checkout.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "CartDeliveryPreference", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "wallet", + "description": "Wallet preferences are used to populate relevant payment fields in the checkout flow.\nAccepted value: `[\"shop_pay\"]`.\n", + "args": [], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "CartPreferencesInput", + "description": "The input fields represent preferences for the buyer that is interacting with the cart.", + "fields": null, + "inputFields": [ + { + "name": "delivery", + "description": "Delivery preferences can be used to prefill the delivery section in at checkout.", + "type": { + "kind": "INPUT_OBJECT", + "name": "CartDeliveryPreferenceInput", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "wallet", + "description": "Wallet preferences are used to populate relevant payment fields in the checkout flow.\nAccepted value: `[\"shop_pay\"]`.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + }, + "defaultValue": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, { "kind": "INPUT_OBJECT", "name": "CartSelectedDeliveryOptionInput", @@ -5798,55 +6449,46 @@ }, { "kind": "OBJECT", - "name": "Checkout", - "description": "A container for all the information required to checkout items and pay.", + "name": "Collection", + "description": "A collection represents a grouping of products that a shop owner can create to\norganize them or make their shops easier to browse.\n", "fields": [ { - "name": "appliedGiftCards", - "description": "The gift cards used on the checkout.", - "args": [], + "name": "description", + "description": "Stripped description of the collection, single line with HTML tags removed.", + "args": [ + { + "name": "truncateAt", + "description": "Truncates string after the given length.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + } + ], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "AppliedGiftCard", - "ofType": null - } - } + "kind": "SCALAR", + "name": "String", + "ofType": null } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "availableShippingRates", - "description": "The available shipping rates for this Checkout.\nShould only be used when checkout `requiresShipping` is `true` and\nthe shipping address is valid.\n", - "args": [], - "type": { - "kind": "OBJECT", - "name": "AvailableShippingRates", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "buyerIdentity", - "description": "The identity of the customer associated with the checkout.", + "name": "descriptionHtml", + "description": "The description of the collection, complete with HTML formatting.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "CheckoutBuyerIdentity", + "kind": "SCALAR", + "name": "HTML", "ofType": null } }, @@ -5854,27 +6496,15 @@ "deprecationReason": null }, { - "name": "completedAt", - "description": "The date and time when the checkout was completed.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "createdAt", - "description": "The date and time when the checkout was created.", + "name": "handle", + "description": "A human-friendly unique string for the collection automatically generated from its title.\nLimit of 255 characters.\n", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "DateTime", + "name": "String", "ofType": null } }, @@ -5882,15 +6512,15 @@ "deprecationReason": null }, { - "name": "currencyCode", - "description": "The currency code for the checkout.", + "name": "id", + "description": "A globally-unique ID.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "ENUM", - "name": "CurrencyCode", + "kind": "SCALAR", + "name": "ID", "ofType": null } }, @@ -5898,46 +6528,24 @@ "deprecationReason": null }, { - "name": "customAttributes", - "description": "A list of extra information that's added to the checkout.", + "name": "image", + "description": "Image associated with the collection.", "args": [], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Attribute", - "ofType": null - } - } - } + "kind": "OBJECT", + "name": "Image", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "discountApplications", - "description": "Discounts that have been applied on the checkout.", + "name": "metafield", + "description": "Returns a metafield found by namespace and key.", "args": [ { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", + "name": "namespace", + "description": "The container the metafield belongs to. If omitted, the app-reserved namespace will be used.", "type": { "kind": "SCALAR", "name": "String", @@ -5946,79 +6554,86 @@ "defaultValue": null }, { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", + "name": "key", + "description": "The identifier for the metafield.", "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } }, "defaultValue": null - }, + } + ], + "type": { + "kind": "OBJECT", + "name": "Metafield", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "metafields", + "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.", + "args": [ { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", + "name": "identifiers", + "description": "The list of metafields to retrieve by namespace and key.\n\nThe input must not contain more than `250` values.", "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "HasMetafieldsIdentifier", + "ofType": null + } + } + } }, "defaultValue": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false" } ], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "DiscountApplicationConnection", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Metafield", + "ofType": null + } } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "email", - "description": "The email attached to this checkout.", + "name": "onlineStoreUrl", + "description": "The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel.", "args": [], "type": { "kind": "SCALAR", - "name": "String", + "name": "URL", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "id", - "description": "A globally-unique ID.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lineItems", - "description": "A list of line item objects, each one containing information about an item in the checkout.", + "name": "products", + "description": "List of products in the collection.", "args": [ { "name": "first", @@ -6069,6 +6684,34 @@ "ofType": null }, "defaultValue": "false" + }, + { + "name": "sortKey", + "description": "Sort the underlying list by the given key.", + "type": { + "kind": "ENUM", + "name": "ProductCollectionSortKeys", + "ofType": null + }, + "defaultValue": "COLLECTION_DEFAULT" + }, + { + "name": "filters", + "description": "Returns a subset of products matching all product filters.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "ProductFilter", + "ofType": null + } + } + }, + "defaultValue": null } ], "type": { @@ -6076,7 +6719,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "CheckoutLineItemConnection", + "name": "ProductConnection", "ofType": null } }, @@ -6084,15 +6727,15 @@ "deprecationReason": null }, { - "name": "lineItemsSubtotalPrice", - "description": "The sum of all the prices of all the items in the checkout. Duties, taxes, shipping and discounts excluded.", + "name": "seo", + "description": "The collection's SEO information.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "OBJECT", - "name": "MoneyV2", + "name": "SEO", "ofType": null } }, @@ -6100,120 +6743,108 @@ "deprecationReason": null }, { - "name": "note", - "description": "The note associated with the checkout.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "order", - "description": "The resulting order from a paid checkout.", + "name": "title", + "description": "The collection’s name. Limit of 255 characters.", "args": [], "type": { - "kind": "OBJECT", - "name": "Order", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "orderStatusUrl", - "description": "The Order Status Page for this Checkout, null when checkout isn't completed.", + "name": "trackingParameters", + "description": "URL parameters to be added to a page URL to track the origin of on-site search traffic for [analytics reporting](https://help.shopify.com/manual/reports-and-analytics/shopify-reports/report-types/default-reports/behaviour-reports). Returns a result when accessed through the [search](https://shopify.dev/docs/api/storefront/current/queries/search) or [predictiveSearch](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries, otherwise returns null.", "args": [], "type": { "kind": "SCALAR", - "name": "URL", + "name": "String", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "paymentDue", - "description": "The amount left to be paid. This is equal to the cost of the line items, taxes, and shipping, minus discounts and gift cards.", + "name": "updatedAt", + "description": "The date and time when the collection was last modified.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", + "kind": "SCALAR", + "name": "DateTime", "ofType": null } }, "isDeprecated": false, "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "HasMetafields", + "ofType": null }, { - "name": "paymentDueV2", - "description": "The amount left to be paid. This is equal to the cost of the line items, duties, taxes, and shipping, minus discounts and gift cards.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `paymentDue` instead." + "kind": "INTERFACE", + "name": "Node", + "ofType": null }, { - "name": "ready", - "description": "Whether or not the Checkout is ready and can be completed. Checkouts may\nhave asynchronous operations that can take time to finish. If you want\nto complete a checkout or ensure all the fields are populated and up to\ndate, polling is required until the value is true.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null + "kind": "INTERFACE", + "name": "OnlineStorePublishable", + "ofType": null }, { - "name": "requiresShipping", - "description": "States whether or not the fulfillment requires shipping.", + "kind": "INTERFACE", + "name": "Trackable", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "CollectionConnection", + "description": "An auto-generated type for paginating through multiple Collections.\n", + "fields": [ + { + "name": "edges", + "description": "A list of edges.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "CollectionEdge", + "ofType": null + } + } } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "shippingAddress", - "description": "The shipping address to where the line items will be shipped.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MailingAddress", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "shippingDiscountAllocations", - "description": "The discounts that have been allocated onto the shipping line by discount applications.\n", + "name": "nodes", + "description": "A list of the nodes contained in CollectionEdge.", "args": [], "type": { "kind": "NON_NULL", @@ -6226,7 +6857,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "DiscountAllocation", + "name": "Collection", "ofType": null } } @@ -6236,27 +6867,15 @@ "deprecationReason": null }, { - "name": "shippingLine", - "description": "Once a shipping rate is selected by the customer it's transitioned to a `shipping_line` object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "ShippingRate", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "subtotalPrice", - "description": "The price at checkout before shipping and taxes.", + "name": "pageInfo", + "description": "Information to aid in pagination.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "OBJECT", - "name": "MoneyV2", + "name": "PageInfo", "ofType": null } }, @@ -6264,31 +6883,42 @@ "deprecationReason": null }, { - "name": "subtotalPriceV2", - "description": "The price at checkout before duties, shipping, and taxes.", + "name": "totalCount", + "description": "The total count of Collections.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", + "kind": "SCALAR", + "name": "UnsignedInt64", "ofType": null } }, - "isDeprecated": true, - "deprecationReason": "Use `subtotalPrice` instead." - }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "CollectionEdge", + "description": "An auto-generated type which holds one Collection and a cursor during pagination.\n", + "fields": [ { - "name": "taxExempt", - "description": "Whether the checkout is tax exempt.", + "name": "cursor", + "description": "A cursor for use in pagination.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "Boolean", + "name": "String", "ofType": null } }, @@ -6296,75 +6926,114 @@ "deprecationReason": null }, { - "name": "taxesIncluded", - "description": "Whether taxes are included in the line item and shipping line prices.", + "name": "node", + "description": "The item at the end of CollectionEdge.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "Boolean", + "kind": "OBJECT", + "name": "Collection", "ofType": null } }, "isDeprecated": false, "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "CollectionSortKeys", + "description": "The set of valid sort keys for the Collection query.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "TITLE", + "description": "Sort by the `title` value.", + "isDeprecated": false, + "deprecationReason": null }, { - "name": "totalDuties", - "description": "The sum of all the duties applied to the line items in the checkout.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - }, + "name": "UPDATED_AT", + "description": "Sort by the `updated_at` value.", "isDeprecated": false, "deprecationReason": null }, { - "name": "totalPrice", - "description": "The sum of all the prices of all the items in the checkout, including taxes and duties.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, + "name": "ID", + "description": "Sort by the `id` value.", "isDeprecated": false, "deprecationReason": null }, { - "name": "totalPriceV2", - "description": "The sum of all the prices of all the items in the checkout, including taxes and duties.", + "name": "RELEVANCE", + "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "SCALAR", + "name": "Color", + "description": "A string containing a hexadecimal representation of a color.\n\nFor example, \"#6A8D48\".\n", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "Comment", + "description": "A comment on an article.", + "fields": [ + { + "name": "author", + "description": "The comment’s author.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "OBJECT", - "name": "MoneyV2", + "name": "CommentAuthor", "ofType": null } }, - "isDeprecated": true, - "deprecationReason": "Use `totalPrice` instead." + "isDeprecated": false, + "deprecationReason": null }, { - "name": "totalTax", - "description": "The sum of all the taxes applied to the line items and shipping lines in the checkout.", - "args": [], + "name": "content", + "description": "Stripped content of the comment, single line with HTML tags removed.", + "args": [ + { + "name": "truncateAt", + "description": "Truncates string after the given length.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + } + ], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", + "kind": "SCALAR", + "name": "String", "ofType": null } }, @@ -6372,56 +7041,40 @@ "deprecationReason": null }, { - "name": "totalTaxV2", - "description": "The sum of all the taxes applied to the line items and shipping lines in the checkout.", + "name": "contentHtml", + "description": "The content of the comment, complete with HTML formatting.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", + "kind": "SCALAR", + "name": "HTML", "ofType": null } }, - "isDeprecated": true, - "deprecationReason": "Use `totalTax` instead." + "isDeprecated": false, + "deprecationReason": null }, { - "name": "updatedAt", - "description": "The date and time when the checkout was last updated.", + "name": "id", + "description": "A globally-unique ID.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "DateTime", + "name": "ID", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - }, - { - "name": "webUrl", - "description": "The url pointing to the checkout accessible from the web.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ + } + ], + "inputFields": null, + "interfaces": [ { "kind": "INTERFACE", "name": "Node", @@ -6432,74 +7085,56 @@ "possibleTypes": null }, { - "kind": "INPUT_OBJECT", - "name": "CheckoutAttributesUpdateV2Input", - "description": "The input fields required to update a checkout's attributes.", - "fields": null, - "inputFields": [ + "kind": "OBJECT", + "name": "CommentAuthor", + "description": "The author of a comment.", + "fields": [ { - "name": "customAttributes", - "description": "A list of extra information that's added to the checkout.", + "name": "email", + "description": "The author's email.", + "args": [], "type": { - "kind": "LIST", + "kind": "NON_NULL", "name": null, "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "AttributeInput", - "ofType": null - } + "kind": "SCALAR", + "name": "String", + "ofType": null } }, - "defaultValue": null - }, - { - "name": "note", - "description": "The text of an optional note that a shop owner can attach to the checkout.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null + "isDeprecated": false, + "deprecationReason": null }, { - "name": "allowPartialAddresses", - "description": "Allows setting partial addresses on a Checkout, skipping the full validation of attributes.\nThe required attributes are city, province, and country.\nFull validation of the addresses is still done at completion time. Defaults to `false` with \neach operation.\n", + "name": "name", + "description": "The author’s name.", + "args": [], "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } }, - "defaultValue": "false" + "isDeprecated": false, + "deprecationReason": null } ], - "interfaces": null, + "inputFields": null, + "interfaces": [], "enumValues": null, "possibleTypes": null }, { "kind": "OBJECT", - "name": "CheckoutAttributesUpdateV2Payload", - "description": "Return type for `checkoutAttributesUpdateV2` mutation.", + "name": "CommentConnection", + "description": "An auto-generated type for paginating through multiple Comments.\n", "fields": [ { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", + "name": "edges", + "description": "A list of edges.", "args": [], "type": { "kind": "NON_NULL", @@ -6512,7 +7147,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "CheckoutUserError", + "name": "CommentEdge", "ofType": null } } @@ -6522,8 +7157,8 @@ "deprecationReason": null }, { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", + "name": "nodes", + "description": "A list of the nodes contained in CommentEdge.", "args": [], "type": { "kind": "NON_NULL", @@ -6536,133 +7171,73 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "UserError", + "name": "Comment", "ofType": null } } } }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutBuyerIdentity", - "description": "The identity of the customer associated with the checkout.", - "fields": [ - { - "name": "countryCode", - "description": "The country code for the checkout. For example, `CA`.", - "args": [], - "type": { - "kind": "ENUM", - "name": "CountryCode", - "ofType": null - }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "CheckoutBuyerIdentityInput", - "description": "The input fields for the identity of the customer associated with the checkout.", - "fields": null, - "inputFields": [ + }, { - "name": "countryCode", - "description": "The country code of one of the shop's\n[enabled countries](https://help.shopify.com/en/manual/payments/shopify-payments/multi-currency/setup).\nFor example, `CA`. Including this field creates a checkout in the specified country's currency.\n", + "name": "pageInfo", + "description": "Information to aid in pagination.", + "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "ENUM", - "name": "CountryCode", + "kind": "OBJECT", + "name": "PageInfo", "ofType": null } }, - "defaultValue": null + "isDeprecated": false, + "deprecationReason": null } ], - "interfaces": null, + "inputFields": null, + "interfaces": [], "enumValues": null, "possibleTypes": null }, { "kind": "OBJECT", - "name": "CheckoutCompleteFreePayload", - "description": "Return type for `checkoutCompleteFree` mutation.", + "name": "CommentEdge", + "description": "An auto-generated type which holds one Comment and a cursor during pagination.\n", "fields": [ { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", + "name": "cursor", + "description": "A cursor for use in pagination.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } + "kind": "SCALAR", + "name": "String", + "ofType": null } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", + "name": "node", + "description": "The item at the end of CommentEdge.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } + "kind": "OBJECT", + "name": "Comment", + "ofType": null } }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." + "isDeprecated": false, + "deprecationReason": null } ], "inputFields": null, @@ -6672,108 +7247,117 @@ }, { "kind": "OBJECT", - "name": "CheckoutCompleteWithCreditCardV2Payload", - "description": "Return type for `checkoutCompleteWithCreditCardV2` mutation.", + "name": "Company", + "description": "Represents information about a company which is also a customer of the shop.", "fields": [ { - "name": "checkout", - "description": "The checkout on which the payment was applied.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", + "name": "createdAt", + "description": "The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) at which the company was created in Shopify.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } + "kind": "SCALAR", + "name": "DateTime", + "ofType": null } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "payment", - "description": "A representation of the attempted payment.", + "name": "externalId", + "description": "A unique externally-supplied ID for the company.", "args": [], "type": { - "kind": "OBJECT", - "name": "Payment", + "kind": "SCALAR", + "name": "String", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", + "name": "id", + "description": "A globally-unique ID.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "metafield", + "description": "Returns a metafield found by namespace and key.", + "args": [ + { + "name": "namespace", + "description": "The container the metafield belongs to. If omitted, the app-reserved namespace will be used.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "key", + "description": "The identifier for the metafield.", + "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "UserError", + "kind": "SCALAR", + "name": "String", "ofType": null } - } + }, + "defaultValue": null } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutCompleteWithTokenizedPaymentV3Payload", - "description": "Return type for `checkoutCompleteWithTokenizedPaymentV3` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The checkout on which the payment was applied.", - "args": [], + ], "type": { "kind": "OBJECT", - "name": "Checkout", + "name": "Metafield", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], + "name": "metafields", + "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.", + "args": [ + { + "name": "identifiers", + "description": "The list of metafields to retrieve by namespace and key.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "HasMetafieldsIdentifier", + "ofType": null + } + } + } + }, + "defaultValue": null + } + ], "type": { "kind": "NON_NULL", "name": null, @@ -6781,13 +7365,9 @@ "kind": "LIST", "name": null, "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } + "kind": "OBJECT", + "name": "Metafield", + "ofType": null } } }, @@ -6795,188 +7375,167 @@ "deprecationReason": null }, { - "name": "payment", - "description": "A representation of the attempted payment.", + "name": "name", + "description": "The name of the company.", "args": [], "type": { - "kind": "OBJECT", - "name": "Payment", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", + "name": "updatedAt", + "description": "The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) at which the company was last modified.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } + "kind": "SCALAR", + "name": "DateTime", + "ofType": null } }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." + "isDeprecated": false, + "deprecationReason": null } ], "inputFields": null, - "interfaces": [], + "interfaces": [ + { + "kind": "INTERFACE", + "name": "HasMetafields", + "ofType": null + }, + { + "kind": "INTERFACE", + "name": "Node", + "ofType": null + } + ], "enumValues": null, "possibleTypes": null }, { - "kind": "INPUT_OBJECT", - "name": "CheckoutCreateInput", - "description": "The input fields required to create a checkout.", - "fields": null, - "inputFields": [ - { - "name": "allowPartialAddresses", - "description": "Allows setting partial addresses on a Checkout, skipping the full validation of attributes.\nThe required attributes are city, province, and country.\nFull validation of addresses is still done at completion time. Defaults to `null`.\n", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": null - }, + "kind": "OBJECT", + "name": "CompanyContact", + "description": "A company's main point of contact.", + "fields": [ { - "name": "customAttributes", - "description": "A list of extra information that's added to the checkout.", + "name": "createdAt", + "description": "The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) at which the company contact was created in Shopify.", + "args": [], "type": { - "kind": "LIST", + "kind": "NON_NULL", "name": null, "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "AttributeInput", - "ofType": null - } + "kind": "SCALAR", + "name": "DateTime", + "ofType": null } }, - "defaultValue": null - }, - { - "name": "email", - "description": "The email with which the customer wants to checkout.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null + "isDeprecated": false, + "deprecationReason": null }, { - "name": "lineItems", - "description": "A list of line item objects, each one containing information about an item in the checkout.", + "name": "id", + "description": "A globally-unique ID.", + "args": [], "type": { - "kind": "LIST", + "kind": "NON_NULL", "name": null, "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CheckoutLineItemInput", - "ofType": null - } + "kind": "SCALAR", + "name": "ID", + "ofType": null } }, - "defaultValue": null + "isDeprecated": false, + "deprecationReason": null }, { - "name": "note", - "description": "The text of an optional note that a shop owner can attach to the checkout.", + "name": "locale", + "description": "The company contact's locale (language).", + "args": [], "type": { "kind": "SCALAR", "name": "String", "ofType": null }, - "defaultValue": null + "isDeprecated": false, + "deprecationReason": null }, { - "name": "buyerIdentity", - "description": "The identity of the customer associated with the checkout.", + "name": "title", + "description": "The company contact's job title.", + "args": [], "type": { - "kind": "INPUT_OBJECT", - "name": "CheckoutBuyerIdentityInput", + "kind": "SCALAR", + "name": "String", "ofType": null }, - "defaultValue": null + "isDeprecated": false, + "deprecationReason": null }, { - "name": "shippingAddress", - "description": "The shipping address to where the line items will be shipped.", + "name": "updatedAt", + "description": "The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) at which the company contact was last modified.", + "args": [], "type": { - "kind": "INPUT_OBJECT", - "name": "MailingAddressInput", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "DateTime", + "ofType": null + } }, - "defaultValue": null + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "Node", + "ofType": null } ], - "interfaces": null, "enumValues": null, "possibleTypes": null }, { "kind": "OBJECT", - "name": "CheckoutCreatePayload", - "description": "Return type for `checkoutCreate` mutation.", + "name": "CompanyLocation", + "description": "A company's location.", "fields": [ { - "name": "checkout", - "description": "The new checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", + "name": "createdAt", + "description": "The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) at which the company location was created in Shopify.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } + "kind": "SCALAR", + "name": "DateTime", + "ofType": null } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "queueToken", - "description": "The checkout queue token. Available only to selected stores.", + "name": "externalId", + "description": "A unique externally-supplied ID for the company.", "args": [], "type": { "kind": "SCALAR", @@ -6987,139 +7546,97 @@ "deprecationReason": null }, { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", + "name": "id", + "description": "A globally-unique ID.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } + "kind": "SCALAR", + "name": "ID", + "ofType": null } }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutCustomerAssociateV2Payload", - "description": "Return type for `checkoutCustomerAssociateV2` mutation.", - "fields": [ + "isDeprecated": false, + "deprecationReason": null + }, { - "name": "checkout", - "description": "The updated checkout object.", + "name": "locale", + "description": "The preferred locale of the company location.", "args": [], "type": { - "kind": "OBJECT", - "name": "Checkout", + "kind": "SCALAR", + "name": "String", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { + "name": "metafield", + "description": "Returns a metafield found by namespace and key.", + "args": [ + { + "name": "namespace", + "description": "The container the metafield belongs to. If omitted, the app-reserved namespace will be used.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "key", + "description": "The identifier for the metafield.", + "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", + "kind": "SCALAR", + "name": "String", "ofType": null } - } + }, + "defaultValue": null } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customer", - "description": "The associated customer object.", - "args": [], + ], "type": { "kind": "OBJECT", - "name": "Customer", + "name": "Metafield", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { + "name": "metafields", + "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.", + "args": [ + { + "name": "identifiers", + "description": "The list of metafields to retrieve by namespace and key.\n\nThe input must not contain more than `250` values.", + "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "HasMetafieldsIdentifier", + "ofType": null + } + } } - } + }, + "defaultValue": null } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutCustomerDisassociateV2Payload", - "description": "Return type for `checkoutCustomerDisassociateV2` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], + ], "type": { "kind": "NON_NULL", "name": null, @@ -7127,13 +7644,9 @@ "kind": "LIST", "name": null, "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } + "kind": "OBJECT", + "name": "Metafield", + "ofType": null } } }, @@ -7141,170 +7654,70 @@ "deprecationReason": null }, { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", + "name": "name", + "description": "The name of the company location.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } + "kind": "SCALAR", + "name": "String", + "ofType": null } }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutDiscountCodeApplyV2Payload", - "description": "Return type for `checkoutDiscountCodeApplyV2` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, "isDeprecated": false, "deprecationReason": null }, { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", + "name": "updatedAt", + "description": "The date and time ([ISO 8601 format](http://en.wikipedia.org/wiki/ISO_8601)) at which the company location was last modified.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } + "kind": "SCALAR", + "name": "DateTime", + "ofType": null } }, "isDeprecated": false, "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "HasMetafields", + "ofType": null }, { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." + "kind": "INTERFACE", + "name": "Node", + "ofType": null } ], - "inputFields": null, - "interfaces": [], "enumValues": null, "possibleTypes": null }, { "kind": "OBJECT", - "name": "CheckoutDiscountCodeRemovePayload", - "description": "Return type for `checkoutDiscountCodeRemove` mutation.", + "name": "CompletePaymentChallenge", + "description": "The action for the 3DS payment redirect.", "fields": [ { - "name": "checkout", - "description": "The updated checkout object.", + "name": "redirectUrl", + "description": "The URL for the 3DS payment redirect.", "args": [], "type": { - "kind": "OBJECT", - "name": "Checkout", + "kind": "SCALAR", + "name": "URL", "ofType": null }, "isDeprecated": false, "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." } ], "inputFields": null, @@ -7314,68 +7727,36 @@ }, { "kind": "OBJECT", - "name": "CheckoutEmailUpdateV2Payload", - "description": "Return type for `checkoutEmailUpdateV2` mutation.", + "name": "CompletionError", + "description": "An error that occurred during a cart completion attempt.", "fields": [ { - "name": "checkout", - "description": "The checkout object with the updated email.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", + "name": "code", + "description": "The error code.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } + "kind": "ENUM", + "name": "CompletionErrorCode", + "ofType": null } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", + "name": "message", + "description": "The error message.", "args": [], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } + "kind": "SCALAR", + "name": "String", + "ofType": null }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." + "isDeprecated": false, + "deprecationReason": null } ], "inputFields": null, @@ -7385,285 +7766,87 @@ }, { "kind": "ENUM", - "name": "CheckoutErrorCode", - "description": "Possible error codes that can be returned by `CheckoutUserError`.", + "name": "CompletionErrorCode", + "description": "The code of the error that occurred during a cart completion attempt.", "fields": null, "inputFields": null, "interfaces": null, "enumValues": [ { - "name": "BLANK", - "description": "The input value is blank.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INVALID", - "description": "The input value is invalid.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TOO_LONG", - "description": "The input value is too long.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PRESENT", - "description": "The input value needs to be blank.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LESS_THAN", - "description": "The input value should be less than the maximum value allowed.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LESS_THAN_OR_EQUAL_TO", - "description": "The input value should be less than or equal to the maximum value allowed.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GREATER_THAN_OR_EQUAL_TO", - "description": "The input value should be greater than or equal to the minimum value allowed.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ALREADY_COMPLETED", - "description": "Checkout is already completed.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LOCKED", - "description": "Checkout is locked.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NOT_SUPPORTED", - "description": "Input value is not supported.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BAD_DOMAIN", - "description": "Input email contains an invalid domain name.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INVALID_FOR_COUNTRY", - "description": "Input Zip is invalid for country provided.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INVALID_FOR_COUNTRY_AND_PROVINCE", - "description": "Input Zip is invalid for country and province provided.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INVALID_STATE_IN_COUNTRY", - "description": "Invalid state in country.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INVALID_PROVINCE_IN_COUNTRY", - "description": "Invalid province in country.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INVALID_REGION_IN_COUNTRY", - "description": "Invalid region in country.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SHIPPING_RATE_EXPIRED", - "description": "Shipping rate expired.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GIFT_CARD_UNUSABLE", - "description": "Gift card cannot be applied to a checkout that contains a gift card.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GIFT_CARD_DISABLED", - "description": "Gift card is disabled.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GIFT_CARD_CODE_INVALID", - "description": "Gift card code is invalid.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GIFT_CARD_ALREADY_APPLIED", - "description": "Gift card has already been applied.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GIFT_CARD_CURRENCY_MISMATCH", - "description": "Gift card currency does not match checkout currency.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GIFT_CARD_EXPIRED", - "description": "Gift card is expired.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GIFT_CARD_DEPLETED", - "description": "Gift card has no funds left.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GIFT_CARD_NOT_FOUND", - "description": "Gift card was not found.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CART_DOES_NOT_MEET_DISCOUNT_REQUIREMENTS_NOTICE", - "description": "Cart does not meet discount requirements notice.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DISCOUNT_EXPIRED", - "description": "Discount expired.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DISCOUNT_DISABLED", - "description": "Discount disabled.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DISCOUNT_LIMIT_REACHED", - "description": "Discount limit reached.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "HIGHER_VALUE_DISCOUNT_APPLIED", - "description": "Higher value discount applied.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MAXIMUM_DISCOUNT_CODE_LIMIT_REACHED", - "description": "Maximum number of discount codes limit reached.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DISCOUNT_NOT_FOUND", - "description": "Discount not found.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CUSTOMER_ALREADY_USED_ONCE_PER_CUSTOMER_DISCOUNT_NOTICE", - "description": "Customer already used once per customer discount notice.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "DISCOUNT_CODE_APPLICATION_FAILED", - "description": "Discount code isn't working right now. Please contact us for help.", + "name": "ERROR", + "description": null, "isDeprecated": false, "deprecationReason": null }, { - "name": "EMPTY", - "description": "Checkout is already completed.", + "name": "INVENTORY_RESERVATION_ERROR", + "description": null, "isDeprecated": false, "deprecationReason": null }, { - "name": "NOT_ENOUGH_IN_STOCK", - "description": "Not enough in stock.", + "name": "PAYMENT_ERROR", + "description": null, "isDeprecated": false, "deprecationReason": null }, { - "name": "MISSING_PAYMENT_INPUT", - "description": "Missing payment input.", + "name": "PAYMENT_TRANSIENT_ERROR", + "description": null, "isDeprecated": false, "deprecationReason": null }, { - "name": "TOTAL_PRICE_MISMATCH", - "description": "The amount of the payment does not match the value to be paid.", + "name": "PAYMENT_AMOUNT_TOO_SMALL", + "description": null, "isDeprecated": false, "deprecationReason": null }, { - "name": "LINE_ITEM_NOT_FOUND", - "description": "Line item was not found in checkout.", + "name": "PAYMENT_GATEWAY_NOT_ENABLED_ERROR", + "description": null, "isDeprecated": false, "deprecationReason": null }, { - "name": "UNABLE_TO_APPLY", - "description": "Unable to apply discount.", + "name": "PAYMENT_INSUFFICIENT_FUNDS", + "description": null, "isDeprecated": false, "deprecationReason": null }, { - "name": "DISCOUNT_ALREADY_APPLIED", - "description": "Discount already applied.", + "name": "PAYMENT_INVALID_PAYMENT_METHOD", + "description": null, "isDeprecated": false, "deprecationReason": null }, { - "name": "THROTTLED_DURING_CHECKOUT", - "description": "Throttled during checkout.", + "name": "PAYMENT_INVALID_CURRENCY", + "description": null, "isDeprecated": false, "deprecationReason": null }, { - "name": "EXPIRED_QUEUE_TOKEN", - "description": "Queue token has expired.", + "name": "PAYMENT_INVALID_CREDIT_CARD", + "description": null, "isDeprecated": false, "deprecationReason": null }, { - "name": "INVALID_QUEUE_TOKEN", - "description": "Queue token is invalid.", + "name": "PAYMENT_INVALID_BILLING_ADDRESS", + "description": null, "isDeprecated": false, "deprecationReason": null }, { - "name": "INVALID_COUNTRY_AND_CURRENCY", - "description": "Cannot specify country and presentment currency code.", + "name": "PAYMENT_CARD_DECLINED", + "description": null, "isDeprecated": false, "deprecationReason": null }, { - "name": "PRODUCT_NOT_AVAILABLE", - "description": "Product is not published for this customer.", + "name": "PAYMENT_CALL_ISSUER", + "description": null, "isDeprecated": false, "deprecationReason": null } @@ -7672,24 +7855,39 @@ }, { "kind": "OBJECT", - "name": "CheckoutGiftCardRemoveV2Payload", - "description": "Return type for `checkoutGiftCardRemoveV2` mutation.", + "name": "ComponentizableCartLine", + "description": "Represents information about the grouped merchandise in the cart.", "fields": [ { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], + "name": "attribute", + "description": "An attribute associated with the cart line.", + "args": [ + { + "name": "key", + "description": "The key of the attribute.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + } + ], "type": { "kind": "OBJECT", - "name": "Checkout", + "name": "Attribute", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", + "name": "attributes", + "description": "The attributes associated with the cart line. Attributes are represented as key-value pairs.", "args": [], "type": { "kind": "NON_NULL", @@ -7702,7 +7900,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "CheckoutUserError", + "name": "Attribute", "ofType": null } } @@ -7712,8 +7910,24 @@ "deprecationReason": null }, { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", + "name": "cost", + "description": "The cost of the merchandise that the buyer will pay for at checkout. The costs are subject to change and changes will be reflected at checkout.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "CartLineCost", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "discountAllocations", + "description": "The discounts that have been applied to the cart line.", "args": [], "type": { "kind": "NON_NULL", @@ -7725,55 +7939,8 @@ "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutGiftCardsAppendPayload", - "description": "Return type for `checkoutGiftCardsAppend` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", + "kind": "INTERFACE", + "name": "CartDiscountAllocation", "ofType": null } } @@ -7783,67 +7950,40 @@ "deprecationReason": null }, { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", + "name": "estimatedCost", + "description": "The estimated cost of the merchandise that the buyer will pay for at checkout. The estimated costs are subject to change and changes will be reflected at checkout.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } + "kind": "OBJECT", + "name": "CartLineEstimatedCost", + "ofType": null } }, "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutLineItem", - "description": "A single line item in the checkout, grouped by variant and attributes.", - "fields": [ + "deprecationReason": "Use `cost` instead." + }, { - "name": "customAttributes", - "description": "Extra information in the form of an array of Key-Value pairs about the line item.", + "name": "id", + "description": "A globally-unique ID.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Attribute", - "ofType": null - } - } + "kind": "SCALAR", + "name": "ID", + "ofType": null } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "discountAllocations", - "description": "The discounts that have been allocated onto the checkout line item by discount applications.", + "name": "lineComponents", + "description": "The components of the line item.", "args": [], "type": { "kind": "NON_NULL", @@ -7856,7 +7996,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "DiscountAllocation", + "name": "CartLine", "ofType": null } } @@ -7866,15 +8006,15 @@ "deprecationReason": null }, { - "name": "id", - "description": "A globally-unique ID.", + "name": "merchandise", + "description": "The merchandise that the buyer intends to purchase.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "ID", + "kind": "UNION", + "name": "Merchandise", "ofType": null } }, @@ -7883,7 +8023,7 @@ }, { "name": "quantity", - "description": "The quantity of the line item.", + "description": "The quantity of the merchandise that the customer intends to purchase.", "args": [], "type": { "kind": "NON_NULL", @@ -7898,40 +8038,12 @@ "deprecationReason": null }, { - "name": "title", - "description": "Title of the line item. Defaults to the product's title.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "unitPrice", - "description": "Unit price of the line item.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "variant", - "description": "Product variant of the line item.", + "name": "sellingPlanAllocation", + "description": "The selling plan associated with the cart line and the effect that each selling plan has on variants when they're purchased.", "args": [], "type": { "kind": "OBJECT", - "name": "ProductVariant", + "name": "SellingPlanAllocation", "ofType": null }, "isDeprecated": false, @@ -7940,6 +8052,11 @@ ], "inputFields": null, "interfaces": [ + { + "kind": "INTERFACE", + "name": "BaseCartLine", + "ofType": null + }, { "kind": "INTERFACE", "name": "Node", @@ -7951,12 +8068,12 @@ }, { "kind": "OBJECT", - "name": "CheckoutLineItemConnection", - "description": "An auto-generated type for paginating through multiple CheckoutLineItems.\n", + "name": "Country", + "description": "A country.", "fields": [ { - "name": "edges", - "description": "A list of edges.", + "name": "availableLanguages", + "description": "The languages available for the country.", "args": [], "type": { "kind": "NON_NULL", @@ -7969,7 +8086,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "CheckoutLineItemEdge", + "name": "Language", "ofType": null } } @@ -7979,59 +8096,52 @@ "deprecationReason": null }, { - "name": "nodes", - "description": "A list of the nodes contained in CheckoutLineItemEdge.", + "name": "currency", + "description": "The currency of the country.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutLineItem", - "ofType": null - } - } + "kind": "OBJECT", + "name": "Currency", + "ofType": null } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "pageInfo", - "description": "Information to aid in pagination.", + "name": "isoCode", + "description": "The ISO code of the country.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "PageInfo", + "kind": "ENUM", + "name": "CountryCode", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutLineItemEdge", - "description": "An auto-generated type which holds one CheckoutLineItem and a cursor during pagination.\n", - "fields": [ + }, { - "name": "cursor", - "description": "A cursor for use in pagination.", + "name": "market", + "description": "The market that includes this country.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "Market", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": "The name of the country.", "args": [], "type": { "kind": "NON_NULL", @@ -8046,15 +8156,15 @@ "deprecationReason": null }, { - "name": "node", - "description": "The item at the end of CheckoutLineItemEdge.", + "name": "unitSystem", + "description": "The unit system used in the country.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "CheckoutLineItem", + "kind": "ENUM", + "name": "UnitSystem", "ofType": null } }, @@ -8068,5280 +8178,3220 @@ "possibleTypes": null }, { - "kind": "INPUT_OBJECT", - "name": "CheckoutLineItemInput", - "description": "The input fields to create a line item on a checkout.", + "kind": "ENUM", + "name": "CountryCode", + "description": "The code designating a country/region, which generally follows ISO 3166-1 alpha-2 guidelines.\nIf a territory doesn't have a country code value in the `CountryCode` enum, then it might be considered a subdivision\nof another country. For example, the territories associated with Spain are represented by the country code `ES`,\nand the territories associated with the United States of America are represented by the country code `US`.\n", "fields": null, - "inputFields": [ + "inputFields": null, + "interfaces": null, + "enumValues": [ { - "name": "customAttributes", - "description": "Extra information in the form of an array of Key-Value pairs about the line item.", - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "AttributeInput", - "ofType": null - } - } - }, - "defaultValue": null + "name": "AF", + "description": "Afghanistan.", + "isDeprecated": false, + "deprecationReason": null }, { - "name": "quantity", - "description": "The quantity of the line item.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - } - }, - "defaultValue": null + "name": "AX", + "description": "Åland Islands.", + "isDeprecated": false, + "deprecationReason": null }, { - "name": "variantId", - "description": "The ID of the product variant for the line item.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "CheckoutLineItemUpdateInput", - "description": "The input fields to update a line item on the checkout.", - "fields": null, - "inputFields": [ - { - "name": "id", - "description": "The ID of the line item.", - "type": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - }, - "defaultValue": null + "name": "AL", + "description": "Albania.", + "isDeprecated": false, + "deprecationReason": null }, { - "name": "customAttributes", - "description": "Extra information in the form of an array of Key-Value pairs about the line item.", - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "AttributeInput", - "ofType": null - } - } - }, - "defaultValue": null + "name": "DZ", + "description": "Algeria.", + "isDeprecated": false, + "deprecationReason": null }, { - "name": "quantity", - "description": "The quantity of the line item.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null + "name": "AD", + "description": "Andorra.", + "isDeprecated": false, + "deprecationReason": null }, { - "name": "variantId", - "description": "The variant ID of the line item.", - "type": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - }, - "defaultValue": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutLineItemsAddPayload", - "description": "Return type for `checkoutLineItemsAdd` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, + "name": "AO", + "description": "Angola.", "isDeprecated": false, "deprecationReason": null }, { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, + "name": "AI", + "description": "Anguilla.", "isDeprecated": false, "deprecationReason": null }, { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutLineItemsRemovePayload", - "description": "Return type for `checkoutLineItemsRemove` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, + "name": "AG", + "description": "Antigua & Barbuda.", "isDeprecated": false, "deprecationReason": null }, { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, + "name": "AR", + "description": "Argentina.", "isDeprecated": false, "deprecationReason": null }, { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutLineItemsReplacePayload", - "description": "Return type for `checkoutLineItemsReplace` mutation.", - "fields": [ + "name": "AM", + "description": "Armenia.", + "isDeprecated": false, + "deprecationReason": null + }, { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, + "name": "AW", + "description": "Aruba.", "isDeprecated": false, "deprecationReason": null }, { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, + "name": "AC", + "description": "Ascension Island.", "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutLineItemsUpdatePayload", - "description": "Return type for `checkoutLineItemsUpdate` mutation.", - "fields": [ + }, { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, + "name": "AU", + "description": "Australia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, + "name": "AT", + "description": "Austria.", "isDeprecated": false, "deprecationReason": null }, { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutShippingAddressUpdateV2Payload", - "description": "Return type for `checkoutShippingAddressUpdateV2` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, + "name": "AZ", + "description": "Azerbaijan.", "isDeprecated": false, "deprecationReason": null }, { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, + "name": "BS", + "description": "Bahamas.", "isDeprecated": false, "deprecationReason": null }, { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutShippingLineUpdatePayload", - "description": "Return type for `checkoutShippingLineUpdate` mutation.", - "fields": [ - { - "name": "checkout", - "description": "The updated checkout object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, + "name": "BH", + "description": "Bahrain.", "isDeprecated": false, "deprecationReason": null }, { - "name": "checkoutUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - } - } - } - }, + "name": "BD", + "description": "Bangladesh.", "isDeprecated": false, "deprecationReason": null }, { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `checkoutUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CheckoutUserError", - "description": "Represents an error that happens during execution of a checkout mutation.", - "fields": [ + "name": "BB", + "description": "Barbados.", + "isDeprecated": false, + "deprecationReason": null + }, { - "name": "code", - "description": "The error code.", - "args": [], - "type": { - "kind": "ENUM", - "name": "CheckoutErrorCode", - "ofType": null - }, + "name": "BY", + "description": "Belarus.", "isDeprecated": false, "deprecationReason": null }, { - "name": "field", - "description": "The path to the input field that caused the error.", - "args": [], - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - } - }, + "name": "BE", + "description": "Belgium.", "isDeprecated": false, "deprecationReason": null }, { - "name": "message", - "description": "The error message.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, + "name": "BZ", + "description": "Belize.", "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ + }, { - "kind": "INTERFACE", - "name": "DisplayableError", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Collection", - "description": "A collection represents a grouping of products that a shop owner can create to\norganize them or make their shops easier to browse.\n", - "fields": [ + "name": "BJ", + "description": "Benin.", + "isDeprecated": false, + "deprecationReason": null + }, { - "name": "description", - "description": "Stripped description of the collection, single line with HTML tags removed.", - "args": [ - { - "name": "truncateAt", - "description": "Truncates string after the given length.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, + "name": "BM", + "description": "Bermuda.", "isDeprecated": false, "deprecationReason": null }, { - "name": "descriptionHtml", - "description": "The description of the collection, complete with HTML formatting.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "HTML", - "ofType": null - } - }, + "name": "BT", + "description": "Bhutan.", "isDeprecated": false, "deprecationReason": null }, { - "name": "handle", - "description": "A human-friendly unique string for the collection automatically generated from its title.\nLimit of 255 characters.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, + "name": "BO", + "description": "Bolivia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "id", - "description": "A globally-unique ID.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, + "name": "BA", + "description": "Bosnia & Herzegovina.", "isDeprecated": false, "deprecationReason": null }, { - "name": "image", - "description": "Image associated with the collection.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Image", - "ofType": null - }, + "name": "BW", + "description": "Botswana.", "isDeprecated": false, "deprecationReason": null }, { - "name": "metafield", - "description": "Returns a metafield found by namespace and key.", - "args": [ - { - "name": "key", - "description": "The identifier for the metafield.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "namespace", - "description": "The container the metafield belongs to.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - }, + "name": "BV", + "description": "Bouvet Island.", "isDeprecated": false, "deprecationReason": null }, { - "name": "metafields", - "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.", - "args": [ - { - "name": "identifiers", - "description": "The list of metafields to retrieve by namespace and key.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "HasMetafieldsIdentifier", - "ofType": null - } - } - } - }, - "defaultValue": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - } - } - }, + "name": "BR", + "description": "Brazil.", "isDeprecated": false, "deprecationReason": null }, { - "name": "onlineStoreUrl", - "description": "The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - }, + "name": "IO", + "description": "British Indian Ocean Territory.", "isDeprecated": false, "deprecationReason": null }, { - "name": "products", - "description": "List of products in the collection.", - "args": [ - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "sortKey", - "description": "Sort the underlying list by the given key.", - "type": { - "kind": "ENUM", - "name": "ProductCollectionSortKeys", - "ofType": null - }, - "defaultValue": "COLLECTION_DEFAULT" - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false" - }, - { - "name": "filters", - "description": "Returns a subset of products matching all product filters.", - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "ProductFilter", - "ofType": null - } - } - }, - "defaultValue": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ProductConnection", - "ofType": null - } - }, + "name": "BN", + "description": "Brunei.", "isDeprecated": false, "deprecationReason": null }, { - "name": "seo", - "description": "The collection's SEO information.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SEO", - "ofType": null - } - }, + "name": "BG", + "description": "Bulgaria.", "isDeprecated": false, "deprecationReason": null }, { - "name": "title", - "description": "The collection’s name. Limit of 255 characters.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, + "name": "BF", + "description": "Burkina Faso.", "isDeprecated": false, "deprecationReason": null }, { - "name": "trackingParameters", - "description": "A URL parameters to be added to a page URL when it is linked from a GraphQL result. This allows for tracking the origin of the traffic.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, + "name": "BI", + "description": "Burundi.", "isDeprecated": false, "deprecationReason": null }, { - "name": "updatedAt", - "description": "The date and time when the collection was last modified.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - } - }, + "name": "KH", + "description": "Cambodia.", "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ + }, { - "kind": "INTERFACE", - "name": "HasMetafields", - "ofType": null + "name": "CA", + "description": "Canada.", + "isDeprecated": false, + "deprecationReason": null }, { - "kind": "INTERFACE", - "name": "Node", - "ofType": null + "name": "CV", + "description": "Cape Verde.", + "isDeprecated": false, + "deprecationReason": null }, { - "kind": "INTERFACE", - "name": "OnlineStorePublishable", - "ofType": null + "name": "BQ", + "description": "Caribbean Netherlands.", + "isDeprecated": false, + "deprecationReason": null }, { - "kind": "INTERFACE", - "name": "Trackable", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CollectionConnection", - "description": "An auto-generated type for paginating through multiple Collections.\n", - "fields": [ + "name": "KY", + "description": "Cayman Islands.", + "isDeprecated": false, + "deprecationReason": null + }, { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CollectionEdge", - "ofType": null - } - } - } - }, + "name": "CF", + "description": "Central African Republic.", "isDeprecated": false, "deprecationReason": null }, { - "name": "nodes", - "description": "A list of the nodes contained in CollectionEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Collection", - "ofType": null - } - } - } - }, + "name": "TD", + "description": "Chad.", "isDeprecated": false, "deprecationReason": null }, { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, + "name": "CL", + "description": "Chile.", "isDeprecated": false, "deprecationReason": null }, { - "name": "totalCount", - "description": "The total count of Collections.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "UnsignedInt64", - "ofType": null - } - }, + "name": "CN", + "description": "China.", "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CollectionEdge", - "description": "An auto-generated type which holds one Collection and a cursor during pagination.\n", - "fields": [ + }, { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, + "name": "CX", + "description": "Christmas Island.", "isDeprecated": false, "deprecationReason": null }, { - "name": "node", - "description": "The item at the end of CollectionEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Collection", - "ofType": null - } - }, + "name": "CC", + "description": "Cocos (Keeling) Islands.", "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "CollectionSortKeys", - "description": "The set of valid sort keys for the Collection query.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ + }, { - "name": "ID", - "description": "Sort by the `id` value.", + "name": "CO", + "description": "Colombia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "RELEVANCE", - "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", + "name": "KM", + "description": "Comoros.", "isDeprecated": false, "deprecationReason": null }, { - "name": "TITLE", - "description": "Sort by the `title` value.", + "name": "CG", + "description": "Congo - Brazzaville.", "isDeprecated": false, "deprecationReason": null }, { - "name": "UPDATED_AT", - "description": "Sort by the `updated_at` value.", + "name": "CD", + "description": "Congo - Kinshasa.", "isDeprecated": false, "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "SCALAR", - "name": "Color", - "description": "A string containing a hexadecimal representation of a color.\n\nFor example, \"#6A8D48\".\n", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Comment", - "description": "A comment on an article.", - "fields": [ + }, { - "name": "author", - "description": "The comment’s author.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CommentAuthor", - "ofType": null - } - }, + "name": "CK", + "description": "Cook Islands.", "isDeprecated": false, "deprecationReason": null }, { - "name": "content", - "description": "Stripped content of the comment, single line with HTML tags removed.", - "args": [ - { - "name": "truncateAt", - "description": "Truncates string after the given length.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, + "name": "CR", + "description": "Costa Rica.", "isDeprecated": false, "deprecationReason": null }, { - "name": "contentHtml", - "description": "The content of the comment, complete with HTML formatting.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "HTML", - "ofType": null - } - }, + "name": "HR", + "description": "Croatia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "id", - "description": "A globally-unique ID.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, + "name": "CU", + "description": "Cuba.", "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ + }, { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CommentAuthor", - "description": "The author of a comment.", - "fields": [ + "name": "CW", + "description": "Curaçao.", + "isDeprecated": false, + "deprecationReason": null + }, { - "name": "email", - "description": "The author's email.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, + "name": "CY", + "description": "Cyprus.", "isDeprecated": false, "deprecationReason": null }, { - "name": "name", - "description": "The author’s name.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, + "name": "CZ", + "description": "Czechia.", "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CommentConnection", - "description": "An auto-generated type for paginating through multiple Comments.\n", - "fields": [ + }, { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CommentEdge", - "ofType": null - } - } - } - }, + "name": "CI", + "description": "Côte d’Ivoire.", "isDeprecated": false, "deprecationReason": null }, { - "name": "nodes", - "description": "A list of the nodes contained in CommentEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Comment", - "ofType": null - } - } - } - }, + "name": "DK", + "description": "Denmark.", "isDeprecated": false, "deprecationReason": null }, { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, + "name": "DJ", + "description": "Djibouti.", "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CommentEdge", - "description": "An auto-generated type which holds one Comment and a cursor during pagination.\n", - "fields": [ + }, { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, + "name": "DM", + "description": "Dominica.", "isDeprecated": false, "deprecationReason": null }, { - "name": "node", - "description": "The item at the end of CommentEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Comment", - "ofType": null - } - }, + "name": "DO", + "description": "Dominican Republic.", "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CompletePaymentChallenge", - "description": "The action for the 3DS payment redirect.", - "fields": [ + }, { - "name": "redirectUrl", - "description": "The URL for the 3DS payment redirect.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - }, + "name": "EC", + "description": "Ecuador.", "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CompletionError", - "description": "An error that occurred during a cart completion attempt.", - "fields": [ + }, { - "name": "code", - "description": "The error code.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "CompletionErrorCode", - "ofType": null - } - }, + "name": "EG", + "description": "Egypt.", "isDeprecated": false, "deprecationReason": null }, { - "name": "message", - "description": "The error message.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, + "name": "SV", + "description": "El Salvador.", "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "CompletionErrorCode", - "description": "The code of the error that occurred during a cart completion attempt.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ + }, { - "name": "ERROR", - "description": null, + "name": "GQ", + "description": "Equatorial Guinea.", "isDeprecated": false, "deprecationReason": null }, { - "name": "INVENTORY_RESERVATION_ERROR", - "description": null, + "name": "ER", + "description": "Eritrea.", "isDeprecated": false, "deprecationReason": null }, { - "name": "PAYMENT_ERROR", - "description": null, + "name": "EE", + "description": "Estonia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "PAYMENT_TRANSIENT_ERROR", - "description": null, + "name": "SZ", + "description": "Eswatini.", "isDeprecated": false, "deprecationReason": null }, { - "name": "PAYMENT_AMOUNT_TOO_SMALL", - "description": null, + "name": "ET", + "description": "Ethiopia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "PAYMENT_GATEWAY_NOT_ENABLED_ERROR", - "description": null, + "name": "FK", + "description": "Falkland Islands.", "isDeprecated": false, "deprecationReason": null }, { - "name": "PAYMENT_INSUFFICIENT_FUNDS", - "description": null, + "name": "FO", + "description": "Faroe Islands.", "isDeprecated": false, "deprecationReason": null }, { - "name": "PAYMENT_INVALID_PAYMENT_METHOD", - "description": null, + "name": "FJ", + "description": "Fiji.", "isDeprecated": false, "deprecationReason": null }, { - "name": "PAYMENT_INVALID_CURRENCY", - "description": null, + "name": "FI", + "description": "Finland.", "isDeprecated": false, "deprecationReason": null }, { - "name": "PAYMENT_INVALID_CREDIT_CARD", - "description": null, + "name": "FR", + "description": "France.", "isDeprecated": false, "deprecationReason": null }, { - "name": "PAYMENT_INVALID_BILLING_ADDRESS", - "description": null, + "name": "GF", + "description": "French Guiana.", "isDeprecated": false, "deprecationReason": null }, { - "name": "PAYMENT_CARD_DECLINED", - "description": null, + "name": "PF", + "description": "French Polynesia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "PAYMENT_CALL_ISSUER", - "description": null, + "name": "TF", + "description": "French Southern Territories.", "isDeprecated": false, "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "ComponentizableCartLine", - "description": "Represents information about the grouped merchandise in the cart.", - "fields": [ + }, { - "name": "attribute", - "description": "An attribute associated with the cart line.", - "args": [ - { - "name": "key", - "description": "The key of the attribute.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Attribute", - "ofType": null - }, + "name": "GA", + "description": "Gabon.", "isDeprecated": false, "deprecationReason": null }, { - "name": "attributes", - "description": "The attributes associated with the cart line. Attributes are represented as key-value pairs.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Attribute", - "ofType": null - } - } - } - }, + "name": "GM", + "description": "Gambia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "cost", - "description": "The cost of the merchandise that the buyer will pay for at checkout. The costs are subject to change and changes will be reflected at checkout.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartLineCost", - "ofType": null - } - }, + "name": "GE", + "description": "Georgia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "discountAllocations", - "description": "The discounts that have been applied to the cart line.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INTERFACE", - "name": "CartDiscountAllocation", - "ofType": null - } - } - } - }, + "name": "DE", + "description": "Germany.", "isDeprecated": false, "deprecationReason": null }, { - "name": "estimatedCost", - "description": "The estimated cost of the merchandise that the buyer will pay for at checkout. The estimated costs are subject to change and changes will be reflected at checkout.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartLineEstimatedCost", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `cost` instead." - }, - { - "name": "id", - "description": "A globally-unique ID.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, + "name": "GH", + "description": "Ghana.", "isDeprecated": false, "deprecationReason": null }, { - "name": "lineComponents", - "description": "The components of the line item.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CartLine", - "ofType": null - } - } - } - }, + "name": "GI", + "description": "Gibraltar.", "isDeprecated": false, "deprecationReason": null }, { - "name": "merchandise", - "description": "The merchandise that the buyer intends to purchase.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "UNION", - "name": "Merchandise", - "ofType": null - } - }, + "name": "GR", + "description": "Greece.", "isDeprecated": false, "deprecationReason": null }, { - "name": "quantity", - "description": "The quantity of the merchandise that the customer intends to purchase.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - } - }, + "name": "GL", + "description": "Greenland.", "isDeprecated": false, "deprecationReason": null }, { - "name": "sellingPlanAllocation", - "description": "The selling plan associated with the cart line and the effect that each selling plan has on variants when they're purchased.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "SellingPlanAllocation", - "ofType": null - }, + "name": "GD", + "description": "Grenada.", "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "BaseCartLine", - "ofType": null }, { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Country", - "description": "A country.", - "fields": [ - { - "name": "availableLanguages", - "description": "The languages available for the country.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Language", - "ofType": null - } - } - } - }, + "name": "GP", + "description": "Guadeloupe.", "isDeprecated": false, "deprecationReason": null }, { - "name": "currency", - "description": "The currency of the country.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Currency", - "ofType": null - } - }, + "name": "GT", + "description": "Guatemala.", "isDeprecated": false, "deprecationReason": null }, { - "name": "isoCode", - "description": "The ISO code of the country.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "CountryCode", - "ofType": null - } - }, + "name": "GG", + "description": "Guernsey.", "isDeprecated": false, "deprecationReason": null }, { - "name": "market", - "description": "The market that includes this country.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Market", - "ofType": null - }, + "name": "GN", + "description": "Guinea.", "isDeprecated": false, "deprecationReason": null }, { - "name": "name", - "description": "The name of the country.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, + "name": "GW", + "description": "Guinea-Bissau.", "isDeprecated": false, "deprecationReason": null }, { - "name": "unitSystem", - "description": "The unit system used in the country.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "UnitSystem", - "ofType": null - } - }, + "name": "GY", + "description": "Guyana.", "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "CountryCode", - "description": "The code designating a country/region, which generally follows ISO 3166-1 alpha-2 guidelines.\nIf a territory doesn't have a country code value in the `CountryCode` enum, then it might be considered a subdivision\nof another country. For example, the territories associated with Spain are represented by the country code `ES`,\nand the territories associated with the United States of America are represented by the country code `US`.\n", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ + }, { - "name": "AF", - "description": "Afghanistan.", + "name": "HT", + "description": "Haiti.", "isDeprecated": false, "deprecationReason": null }, { - "name": "AX", - "description": "Åland Islands.", + "name": "HM", + "description": "Heard & McDonald Islands.", "isDeprecated": false, "deprecationReason": null }, { - "name": "AL", - "description": "Albania.", + "name": "VA", + "description": "Vatican City.", "isDeprecated": false, "deprecationReason": null }, { - "name": "DZ", - "description": "Algeria.", + "name": "HN", + "description": "Honduras.", "isDeprecated": false, "deprecationReason": null }, { - "name": "AD", - "description": "Andorra.", + "name": "HK", + "description": "Hong Kong SAR.", "isDeprecated": false, "deprecationReason": null }, { - "name": "AO", - "description": "Angola.", + "name": "HU", + "description": "Hungary.", "isDeprecated": false, "deprecationReason": null }, { - "name": "AI", - "description": "Anguilla.", + "name": "IS", + "description": "Iceland.", "isDeprecated": false, "deprecationReason": null }, { - "name": "AG", - "description": "Antigua & Barbuda.", + "name": "IN", + "description": "India.", "isDeprecated": false, "deprecationReason": null }, { - "name": "AR", - "description": "Argentina.", + "name": "ID", + "description": "Indonesia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "AM", - "description": "Armenia.", + "name": "IR", + "description": "Iran.", "isDeprecated": false, "deprecationReason": null }, { - "name": "AW", - "description": "Aruba.", + "name": "IQ", + "description": "Iraq.", "isDeprecated": false, "deprecationReason": null }, { - "name": "AC", - "description": "Ascension Island.", + "name": "IE", + "description": "Ireland.", "isDeprecated": false, "deprecationReason": null }, { - "name": "AU", - "description": "Australia.", + "name": "IM", + "description": "Isle of Man.", "isDeprecated": false, "deprecationReason": null }, { - "name": "AT", - "description": "Austria.", + "name": "IL", + "description": "Israel.", "isDeprecated": false, "deprecationReason": null }, { - "name": "AZ", - "description": "Azerbaijan.", + "name": "IT", + "description": "Italy.", "isDeprecated": false, "deprecationReason": null }, { - "name": "BS", - "description": "Bahamas.", + "name": "JM", + "description": "Jamaica.", "isDeprecated": false, "deprecationReason": null }, { - "name": "BH", - "description": "Bahrain.", + "name": "JP", + "description": "Japan.", "isDeprecated": false, "deprecationReason": null }, { - "name": "BD", - "description": "Bangladesh.", + "name": "JE", + "description": "Jersey.", "isDeprecated": false, "deprecationReason": null }, { - "name": "BB", - "description": "Barbados.", + "name": "JO", + "description": "Jordan.", "isDeprecated": false, "deprecationReason": null }, { - "name": "BY", - "description": "Belarus.", + "name": "KZ", + "description": "Kazakhstan.", "isDeprecated": false, "deprecationReason": null }, { - "name": "BE", - "description": "Belgium.", + "name": "KE", + "description": "Kenya.", "isDeprecated": false, "deprecationReason": null }, { - "name": "BZ", - "description": "Belize.", + "name": "KI", + "description": "Kiribati.", "isDeprecated": false, "deprecationReason": null }, { - "name": "BJ", - "description": "Benin.", + "name": "KP", + "description": "North Korea.", "isDeprecated": false, "deprecationReason": null }, { - "name": "BM", - "description": "Bermuda.", + "name": "XK", + "description": "Kosovo.", "isDeprecated": false, "deprecationReason": null }, { - "name": "BT", - "description": "Bhutan.", + "name": "KW", + "description": "Kuwait.", "isDeprecated": false, "deprecationReason": null }, { - "name": "BO", - "description": "Bolivia.", + "name": "KG", + "description": "Kyrgyzstan.", "isDeprecated": false, "deprecationReason": null }, { - "name": "BA", - "description": "Bosnia & Herzegovina.", + "name": "LA", + "description": "Laos.", "isDeprecated": false, "deprecationReason": null }, { - "name": "BW", - "description": "Botswana.", + "name": "LV", + "description": "Latvia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "BV", - "description": "Bouvet Island.", + "name": "LB", + "description": "Lebanon.", "isDeprecated": false, "deprecationReason": null }, { - "name": "BR", - "description": "Brazil.", + "name": "LS", + "description": "Lesotho.", "isDeprecated": false, "deprecationReason": null }, { - "name": "IO", - "description": "British Indian Ocean Territory.", + "name": "LR", + "description": "Liberia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "BN", - "description": "Brunei.", + "name": "LY", + "description": "Libya.", "isDeprecated": false, "deprecationReason": null }, { - "name": "BG", - "description": "Bulgaria.", + "name": "LI", + "description": "Liechtenstein.", "isDeprecated": false, "deprecationReason": null }, { - "name": "BF", - "description": "Burkina Faso.", + "name": "LT", + "description": "Lithuania.", "isDeprecated": false, "deprecationReason": null }, { - "name": "BI", - "description": "Burundi.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KH", - "description": "Cambodia.", + "name": "LU", + "description": "Luxembourg.", "isDeprecated": false, "deprecationReason": null }, { - "name": "CA", - "description": "Canada.", + "name": "MO", + "description": "Macao SAR.", "isDeprecated": false, "deprecationReason": null }, { - "name": "CV", - "description": "Cape Verde.", + "name": "MG", + "description": "Madagascar.", "isDeprecated": false, "deprecationReason": null }, { - "name": "BQ", - "description": "Caribbean Netherlands.", + "name": "MW", + "description": "Malawi.", "isDeprecated": false, "deprecationReason": null }, { - "name": "KY", - "description": "Cayman Islands.", + "name": "MY", + "description": "Malaysia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "CF", - "description": "Central African Republic.", + "name": "MV", + "description": "Maldives.", "isDeprecated": false, "deprecationReason": null }, { - "name": "TD", - "description": "Chad.", + "name": "ML", + "description": "Mali.", "isDeprecated": false, "deprecationReason": null }, { - "name": "CL", - "description": "Chile.", + "name": "MT", + "description": "Malta.", "isDeprecated": false, "deprecationReason": null }, { - "name": "CN", - "description": "China.", + "name": "MQ", + "description": "Martinique.", "isDeprecated": false, "deprecationReason": null }, { - "name": "CX", - "description": "Christmas Island.", + "name": "MR", + "description": "Mauritania.", "isDeprecated": false, "deprecationReason": null }, { - "name": "CC", - "description": "Cocos (Keeling) Islands.", + "name": "MU", + "description": "Mauritius.", "isDeprecated": false, "deprecationReason": null }, { - "name": "CO", - "description": "Colombia.", + "name": "YT", + "description": "Mayotte.", "isDeprecated": false, "deprecationReason": null }, { - "name": "KM", - "description": "Comoros.", + "name": "MX", + "description": "Mexico.", "isDeprecated": false, "deprecationReason": null }, { - "name": "CG", - "description": "Congo - Brazzaville.", + "name": "MD", + "description": "Moldova.", "isDeprecated": false, "deprecationReason": null }, { - "name": "CD", - "description": "Congo - Kinshasa.", + "name": "MC", + "description": "Monaco.", "isDeprecated": false, "deprecationReason": null }, { - "name": "CK", - "description": "Cook Islands.", + "name": "MN", + "description": "Mongolia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "CR", - "description": "Costa Rica.", + "name": "ME", + "description": "Montenegro.", "isDeprecated": false, "deprecationReason": null }, { - "name": "HR", - "description": "Croatia.", + "name": "MS", + "description": "Montserrat.", "isDeprecated": false, "deprecationReason": null }, { - "name": "CU", - "description": "Cuba.", + "name": "MA", + "description": "Morocco.", "isDeprecated": false, "deprecationReason": null }, { - "name": "CW", - "description": "Curaçao.", + "name": "MZ", + "description": "Mozambique.", "isDeprecated": false, "deprecationReason": null }, { - "name": "CY", - "description": "Cyprus.", + "name": "MM", + "description": "Myanmar (Burma).", "isDeprecated": false, "deprecationReason": null }, { - "name": "CZ", - "description": "Czechia.", + "name": "NA", + "description": "Namibia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "CI", - "description": "Côte d’Ivoire.", + "name": "NR", + "description": "Nauru.", "isDeprecated": false, "deprecationReason": null }, { - "name": "DK", - "description": "Denmark.", + "name": "NP", + "description": "Nepal.", "isDeprecated": false, "deprecationReason": null }, { - "name": "DJ", - "description": "Djibouti.", + "name": "NL", + "description": "Netherlands.", "isDeprecated": false, "deprecationReason": null }, { - "name": "DM", - "description": "Dominica.", + "name": "AN", + "description": "Netherlands Antilles.", "isDeprecated": false, "deprecationReason": null }, { - "name": "DO", - "description": "Dominican Republic.", + "name": "NC", + "description": "New Caledonia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "EC", - "description": "Ecuador.", + "name": "NZ", + "description": "New Zealand.", "isDeprecated": false, "deprecationReason": null }, { - "name": "EG", - "description": "Egypt.", + "name": "NI", + "description": "Nicaragua.", "isDeprecated": false, "deprecationReason": null }, { - "name": "SV", - "description": "El Salvador.", + "name": "NE", + "description": "Niger.", "isDeprecated": false, "deprecationReason": null }, { - "name": "GQ", - "description": "Equatorial Guinea.", + "name": "NG", + "description": "Nigeria.", "isDeprecated": false, "deprecationReason": null }, { - "name": "ER", - "description": "Eritrea.", + "name": "NU", + "description": "Niue.", "isDeprecated": false, "deprecationReason": null }, { - "name": "EE", - "description": "Estonia.", + "name": "NF", + "description": "Norfolk Island.", "isDeprecated": false, "deprecationReason": null }, { - "name": "SZ", - "description": "Eswatini.", + "name": "MK", + "description": "North Macedonia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "ET", - "description": "Ethiopia.", + "name": "NO", + "description": "Norway.", "isDeprecated": false, "deprecationReason": null }, { - "name": "FK", - "description": "Falkland Islands.", + "name": "OM", + "description": "Oman.", "isDeprecated": false, "deprecationReason": null }, { - "name": "FO", - "description": "Faroe Islands.", + "name": "PK", + "description": "Pakistan.", "isDeprecated": false, "deprecationReason": null }, { - "name": "FJ", - "description": "Fiji.", + "name": "PS", + "description": "Palestinian Territories.", "isDeprecated": false, "deprecationReason": null }, { - "name": "FI", - "description": "Finland.", + "name": "PA", + "description": "Panama.", "isDeprecated": false, "deprecationReason": null }, { - "name": "FR", - "description": "France.", + "name": "PG", + "description": "Papua New Guinea.", "isDeprecated": false, "deprecationReason": null }, { - "name": "GF", - "description": "French Guiana.", + "name": "PY", + "description": "Paraguay.", "isDeprecated": false, "deprecationReason": null }, { - "name": "PF", - "description": "French Polynesia.", + "name": "PE", + "description": "Peru.", "isDeprecated": false, "deprecationReason": null }, { - "name": "TF", - "description": "French Southern Territories.", + "name": "PH", + "description": "Philippines.", "isDeprecated": false, "deprecationReason": null }, { - "name": "GA", - "description": "Gabon.", + "name": "PN", + "description": "Pitcairn Islands.", "isDeprecated": false, "deprecationReason": null }, { - "name": "GM", - "description": "Gambia.", + "name": "PL", + "description": "Poland.", "isDeprecated": false, "deprecationReason": null }, { - "name": "GE", - "description": "Georgia.", + "name": "PT", + "description": "Portugal.", "isDeprecated": false, "deprecationReason": null }, { - "name": "DE", - "description": "Germany.", + "name": "QA", + "description": "Qatar.", "isDeprecated": false, "deprecationReason": null }, { - "name": "GH", - "description": "Ghana.", + "name": "CM", + "description": "Cameroon.", "isDeprecated": false, "deprecationReason": null }, { - "name": "GI", - "description": "Gibraltar.", + "name": "RE", + "description": "Réunion.", "isDeprecated": false, "deprecationReason": null }, { - "name": "GR", - "description": "Greece.", + "name": "RO", + "description": "Romania.", "isDeprecated": false, "deprecationReason": null }, { - "name": "GL", - "description": "Greenland.", + "name": "RU", + "description": "Russia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "GD", - "description": "Grenada.", + "name": "RW", + "description": "Rwanda.", "isDeprecated": false, "deprecationReason": null }, { - "name": "GP", - "description": "Guadeloupe.", + "name": "BL", + "description": "St. Barthélemy.", "isDeprecated": false, "deprecationReason": null }, { - "name": "GT", - "description": "Guatemala.", + "name": "SH", + "description": "St. Helena.", "isDeprecated": false, "deprecationReason": null }, { - "name": "GG", - "description": "Guernsey.", + "name": "KN", + "description": "St. Kitts & Nevis.", "isDeprecated": false, "deprecationReason": null }, { - "name": "GN", - "description": "Guinea.", + "name": "LC", + "description": "St. Lucia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "GW", - "description": "Guinea-Bissau.", + "name": "MF", + "description": "St. Martin.", "isDeprecated": false, "deprecationReason": null }, { - "name": "GY", - "description": "Guyana.", + "name": "PM", + "description": "St. Pierre & Miquelon.", "isDeprecated": false, "deprecationReason": null }, { - "name": "HT", - "description": "Haiti.", + "name": "WS", + "description": "Samoa.", "isDeprecated": false, "deprecationReason": null }, { - "name": "HM", - "description": "Heard & McDonald Islands.", + "name": "SM", + "description": "San Marino.", "isDeprecated": false, "deprecationReason": null }, { - "name": "VA", - "description": "Vatican City.", + "name": "ST", + "description": "São Tomé & Príncipe.", "isDeprecated": false, "deprecationReason": null }, { - "name": "HN", - "description": "Honduras.", + "name": "SA", + "description": "Saudi Arabia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "HK", - "description": "Hong Kong SAR.", + "name": "SN", + "description": "Senegal.", "isDeprecated": false, "deprecationReason": null }, { - "name": "HU", - "description": "Hungary.", + "name": "RS", + "description": "Serbia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "IS", - "description": "Iceland.", + "name": "SC", + "description": "Seychelles.", "isDeprecated": false, "deprecationReason": null }, { - "name": "IN", - "description": "India.", + "name": "SL", + "description": "Sierra Leone.", "isDeprecated": false, "deprecationReason": null }, { - "name": "ID", - "description": "Indonesia.", + "name": "SG", + "description": "Singapore.", "isDeprecated": false, "deprecationReason": null }, { - "name": "IR", - "description": "Iran.", + "name": "SX", + "description": "Sint Maarten.", "isDeprecated": false, "deprecationReason": null }, { - "name": "IQ", - "description": "Iraq.", + "name": "SK", + "description": "Slovakia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "IE", - "description": "Ireland.", + "name": "SI", + "description": "Slovenia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "IM", - "description": "Isle of Man.", + "name": "SB", + "description": "Solomon Islands.", "isDeprecated": false, "deprecationReason": null }, { - "name": "IL", - "description": "Israel.", + "name": "SO", + "description": "Somalia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "IT", - "description": "Italy.", + "name": "ZA", + "description": "South Africa.", "isDeprecated": false, "deprecationReason": null }, { - "name": "JM", - "description": "Jamaica.", + "name": "GS", + "description": "South Georgia & South Sandwich Islands.", "isDeprecated": false, "deprecationReason": null }, { - "name": "JP", - "description": "Japan.", + "name": "KR", + "description": "South Korea.", "isDeprecated": false, "deprecationReason": null }, { - "name": "JE", - "description": "Jersey.", + "name": "SS", + "description": "South Sudan.", "isDeprecated": false, "deprecationReason": null }, { - "name": "JO", - "description": "Jordan.", + "name": "ES", + "description": "Spain.", "isDeprecated": false, "deprecationReason": null }, { - "name": "KZ", - "description": "Kazakhstan.", + "name": "LK", + "description": "Sri Lanka.", "isDeprecated": false, "deprecationReason": null }, { - "name": "KE", - "description": "Kenya.", + "name": "VC", + "description": "St. Vincent & Grenadines.", "isDeprecated": false, "deprecationReason": null }, { - "name": "KI", - "description": "Kiribati.", + "name": "SD", + "description": "Sudan.", "isDeprecated": false, "deprecationReason": null }, { - "name": "KP", - "description": "North Korea.", + "name": "SR", + "description": "Suriname.", "isDeprecated": false, "deprecationReason": null }, { - "name": "XK", - "description": "Kosovo.", + "name": "SJ", + "description": "Svalbard & Jan Mayen.", "isDeprecated": false, "deprecationReason": null }, { - "name": "KW", - "description": "Kuwait.", + "name": "SE", + "description": "Sweden.", "isDeprecated": false, "deprecationReason": null }, { - "name": "KG", - "description": "Kyrgyzstan.", + "name": "CH", + "description": "Switzerland.", "isDeprecated": false, "deprecationReason": null }, { - "name": "LA", - "description": "Laos.", + "name": "SY", + "description": "Syria.", "isDeprecated": false, "deprecationReason": null }, { - "name": "LV", - "description": "Latvia.", + "name": "TW", + "description": "Taiwan.", "isDeprecated": false, "deprecationReason": null }, { - "name": "LB", - "description": "Lebanon.", + "name": "TJ", + "description": "Tajikistan.", "isDeprecated": false, "deprecationReason": null }, { - "name": "LS", - "description": "Lesotho.", + "name": "TZ", + "description": "Tanzania.", "isDeprecated": false, "deprecationReason": null }, { - "name": "LR", - "description": "Liberia.", + "name": "TH", + "description": "Thailand.", "isDeprecated": false, "deprecationReason": null }, { - "name": "LY", - "description": "Libya.", + "name": "TL", + "description": "Timor-Leste.", "isDeprecated": false, "deprecationReason": null }, { - "name": "LI", - "description": "Liechtenstein.", + "name": "TG", + "description": "Togo.", "isDeprecated": false, "deprecationReason": null }, { - "name": "LT", - "description": "Lithuania.", + "name": "TK", + "description": "Tokelau.", "isDeprecated": false, "deprecationReason": null }, { - "name": "LU", - "description": "Luxembourg.", + "name": "TO", + "description": "Tonga.", "isDeprecated": false, "deprecationReason": null }, { - "name": "MO", - "description": "Macao SAR.", + "name": "TT", + "description": "Trinidad & Tobago.", "isDeprecated": false, "deprecationReason": null }, { - "name": "MG", - "description": "Madagascar.", + "name": "TA", + "description": "Tristan da Cunha.", "isDeprecated": false, "deprecationReason": null }, { - "name": "MW", - "description": "Malawi.", + "name": "TN", + "description": "Tunisia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "MY", - "description": "Malaysia.", + "name": "TR", + "description": "Türkiye.", "isDeprecated": false, "deprecationReason": null }, { - "name": "MV", - "description": "Maldives.", + "name": "TM", + "description": "Turkmenistan.", "isDeprecated": false, "deprecationReason": null }, { - "name": "ML", - "description": "Mali.", + "name": "TC", + "description": "Turks & Caicos Islands.", "isDeprecated": false, "deprecationReason": null }, { - "name": "MT", - "description": "Malta.", + "name": "TV", + "description": "Tuvalu.", "isDeprecated": false, "deprecationReason": null }, { - "name": "MQ", - "description": "Martinique.", + "name": "UG", + "description": "Uganda.", "isDeprecated": false, "deprecationReason": null }, { - "name": "MR", - "description": "Mauritania.", + "name": "UA", + "description": "Ukraine.", "isDeprecated": false, "deprecationReason": null }, { - "name": "MU", - "description": "Mauritius.", + "name": "AE", + "description": "United Arab Emirates.", "isDeprecated": false, "deprecationReason": null }, { - "name": "YT", - "description": "Mayotte.", + "name": "GB", + "description": "United Kingdom.", "isDeprecated": false, "deprecationReason": null }, { - "name": "MX", - "description": "Mexico.", + "name": "US", + "description": "United States.", "isDeprecated": false, "deprecationReason": null }, { - "name": "MD", - "description": "Moldova.", + "name": "UM", + "description": "U.S. Outlying Islands.", "isDeprecated": false, "deprecationReason": null }, { - "name": "MC", - "description": "Monaco.", + "name": "UY", + "description": "Uruguay.", "isDeprecated": false, "deprecationReason": null }, { - "name": "MN", - "description": "Mongolia.", + "name": "UZ", + "description": "Uzbekistan.", "isDeprecated": false, "deprecationReason": null }, { - "name": "ME", - "description": "Montenegro.", + "name": "VU", + "description": "Vanuatu.", "isDeprecated": false, "deprecationReason": null }, { - "name": "MS", - "description": "Montserrat.", + "name": "VE", + "description": "Venezuela.", "isDeprecated": false, "deprecationReason": null }, { - "name": "MA", - "description": "Morocco.", + "name": "VN", + "description": "Vietnam.", "isDeprecated": false, "deprecationReason": null }, { - "name": "MZ", - "description": "Mozambique.", + "name": "VG", + "description": "British Virgin Islands.", "isDeprecated": false, "deprecationReason": null }, { - "name": "MM", - "description": "Myanmar (Burma).", + "name": "WF", + "description": "Wallis & Futuna.", "isDeprecated": false, "deprecationReason": null }, { - "name": "NA", - "description": "Namibia.", + "name": "EH", + "description": "Western Sahara.", "isDeprecated": false, "deprecationReason": null }, { - "name": "NR", - "description": "Nauru.", + "name": "YE", + "description": "Yemen.", "isDeprecated": false, "deprecationReason": null }, { - "name": "NP", - "description": "Nepal.", + "name": "ZM", + "description": "Zambia.", "isDeprecated": false, "deprecationReason": null }, { - "name": "NL", - "description": "Netherlands.", + "name": "ZW", + "description": "Zimbabwe.", "isDeprecated": false, "deprecationReason": null }, { - "name": "AN", - "description": "Netherlands Antilles.", + "name": "ZZ", + "description": "Unknown Region.", "isDeprecated": false, "deprecationReason": null - }, + } + ], + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "CropRegion", + "description": "The part of the image that should remain after cropping.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ { - "name": "NC", - "description": "New Caledonia.", + "name": "CENTER", + "description": "Keep the center of the image.", "isDeprecated": false, "deprecationReason": null }, { - "name": "NZ", - "description": "New Zealand.", + "name": "TOP", + "description": "Keep the top of the image.", "isDeprecated": false, "deprecationReason": null }, { - "name": "NI", - "description": "Nicaragua.", + "name": "BOTTOM", + "description": "Keep the bottom of the image.", "isDeprecated": false, "deprecationReason": null }, { - "name": "NE", - "description": "Niger.", + "name": "LEFT", + "description": "Keep the left of the image.", "isDeprecated": false, "deprecationReason": null }, { - "name": "NG", - "description": "Nigeria.", + "name": "RIGHT", + "description": "Keep the right of the image.", "isDeprecated": false, "deprecationReason": null - }, - { - "name": "NU", - "description": "Niue.", + } + ], + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "Currency", + "description": "A currency.", + "fields": [ + { + "name": "isoCode", + "description": "The ISO code of the currency.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "CurrencyCode", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "NF", - "description": "Norfolk Island.", + "name": "name", + "description": "The name of the currency.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "MK", - "description": "North Macedonia.", + "name": "symbol", + "description": "The symbol of the currency.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "CurrencyCode", + "description": "The three-letter currency codes that represent the world currencies used in\nstores. These include standard ISO 4217 codes, legacy codes,\nand non-standard codes.\n", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "USD", + "description": "United States Dollars (USD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "NO", - "description": "Norway.", + "name": "EUR", + "description": "Euro (EUR).", "isDeprecated": false, "deprecationReason": null }, { - "name": "OM", - "description": "Oman.", + "name": "GBP", + "description": "United Kingdom Pounds (GBP).", "isDeprecated": false, "deprecationReason": null }, { - "name": "PK", - "description": "Pakistan.", + "name": "CAD", + "description": "Canadian Dollars (CAD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "PS", - "description": "Palestinian Territories.", + "name": "AFN", + "description": "Afghan Afghani (AFN).", "isDeprecated": false, "deprecationReason": null }, { - "name": "PA", - "description": "Panama.", + "name": "ALL", + "description": "Albanian Lek (ALL).", "isDeprecated": false, "deprecationReason": null }, { - "name": "PG", - "description": "Papua New Guinea.", + "name": "DZD", + "description": "Algerian Dinar (DZD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "PY", - "description": "Paraguay.", + "name": "AOA", + "description": "Angolan Kwanza (AOA).", "isDeprecated": false, "deprecationReason": null }, { - "name": "PE", - "description": "Peru.", + "name": "ARS", + "description": "Argentine Pesos (ARS).", "isDeprecated": false, "deprecationReason": null }, { - "name": "PH", - "description": "Philippines.", + "name": "AMD", + "description": "Armenian Dram (AMD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "PN", - "description": "Pitcairn Islands.", + "name": "AWG", + "description": "Aruban Florin (AWG).", "isDeprecated": false, "deprecationReason": null }, { - "name": "PL", - "description": "Poland.", + "name": "AUD", + "description": "Australian Dollars (AUD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "PT", - "description": "Portugal.", + "name": "BBD", + "description": "Barbadian Dollar (BBD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "QA", - "description": "Qatar.", + "name": "AZN", + "description": "Azerbaijani Manat (AZN).", "isDeprecated": false, "deprecationReason": null }, { - "name": "CM", - "description": "Cameroon.", + "name": "BDT", + "description": "Bangladesh Taka (BDT).", "isDeprecated": false, "deprecationReason": null }, { - "name": "RE", - "description": "Réunion.", + "name": "BSD", + "description": "Bahamian Dollar (BSD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "RO", - "description": "Romania.", + "name": "BHD", + "description": "Bahraini Dinar (BHD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "RU", - "description": "Russia.", + "name": "BIF", + "description": "Burundian Franc (BIF).", "isDeprecated": false, "deprecationReason": null }, { - "name": "RW", - "description": "Rwanda.", + "name": "BZD", + "description": "Belize Dollar (BZD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "BL", - "description": "St. Barthélemy.", + "name": "BMD", + "description": "Bermudian Dollar (BMD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "SH", - "description": "St. Helena.", + "name": "BTN", + "description": "Bhutanese Ngultrum (BTN).", "isDeprecated": false, "deprecationReason": null }, { - "name": "KN", - "description": "St. Kitts & Nevis.", + "name": "BAM", + "description": "Bosnia and Herzegovina Convertible Mark (BAM).", "isDeprecated": false, "deprecationReason": null }, { - "name": "LC", - "description": "St. Lucia.", + "name": "BRL", + "description": "Brazilian Real (BRL).", "isDeprecated": false, "deprecationReason": null }, { - "name": "MF", - "description": "St. Martin.", + "name": "BOB", + "description": "Bolivian Boliviano (BOB).", "isDeprecated": false, "deprecationReason": null }, { - "name": "PM", - "description": "St. Pierre & Miquelon.", + "name": "BWP", + "description": "Botswana Pula (BWP).", "isDeprecated": false, "deprecationReason": null }, { - "name": "WS", - "description": "Samoa.", + "name": "BND", + "description": "Brunei Dollar (BND).", "isDeprecated": false, "deprecationReason": null }, { - "name": "SM", - "description": "San Marino.", + "name": "BGN", + "description": "Bulgarian Lev (BGN).", "isDeprecated": false, "deprecationReason": null }, { - "name": "ST", - "description": "São Tomé & Príncipe.", + "name": "MMK", + "description": "Burmese Kyat (MMK).", "isDeprecated": false, "deprecationReason": null }, { - "name": "SA", - "description": "Saudi Arabia.", + "name": "KHR", + "description": "Cambodian Riel.", "isDeprecated": false, "deprecationReason": null }, { - "name": "SN", - "description": "Senegal.", + "name": "CVE", + "description": "Cape Verdean escudo (CVE).", "isDeprecated": false, "deprecationReason": null }, { - "name": "RS", - "description": "Serbia.", + "name": "KYD", + "description": "Cayman Dollars (KYD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "SC", - "description": "Seychelles.", + "name": "XAF", + "description": "Central African CFA Franc (XAF).", "isDeprecated": false, "deprecationReason": null }, { - "name": "SL", - "description": "Sierra Leone.", + "name": "CLP", + "description": "Chilean Peso (CLP).", "isDeprecated": false, "deprecationReason": null }, { - "name": "SG", - "description": "Singapore.", + "name": "CNY", + "description": "Chinese Yuan Renminbi (CNY).", "isDeprecated": false, "deprecationReason": null }, { - "name": "SX", - "description": "Sint Maarten.", + "name": "COP", + "description": "Colombian Peso (COP).", "isDeprecated": false, "deprecationReason": null }, { - "name": "SK", - "description": "Slovakia.", + "name": "KMF", + "description": "Comorian Franc (KMF).", "isDeprecated": false, "deprecationReason": null }, { - "name": "SI", - "description": "Slovenia.", + "name": "CDF", + "description": "Congolese franc (CDF).", "isDeprecated": false, "deprecationReason": null }, { - "name": "SB", - "description": "Solomon Islands.", + "name": "CRC", + "description": "Costa Rican Colones (CRC).", "isDeprecated": false, "deprecationReason": null }, { - "name": "SO", - "description": "Somalia.", + "name": "HRK", + "description": "Croatian Kuna (HRK).", "isDeprecated": false, "deprecationReason": null }, { - "name": "ZA", - "description": "South Africa.", + "name": "CZK", + "description": "Czech Koruny (CZK).", "isDeprecated": false, "deprecationReason": null }, { - "name": "GS", - "description": "South Georgia & South Sandwich Islands.", + "name": "DKK", + "description": "Danish Kroner (DKK).", "isDeprecated": false, "deprecationReason": null }, { - "name": "KR", - "description": "South Korea.", + "name": "DOP", + "description": "Dominican Peso (DOP).", "isDeprecated": false, "deprecationReason": null }, { - "name": "SS", - "description": "South Sudan.", + "name": "XCD", + "description": "East Caribbean Dollar (XCD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "ES", - "description": "Spain.", + "name": "EGP", + "description": "Egyptian Pound (EGP).", "isDeprecated": false, "deprecationReason": null }, { - "name": "LK", - "description": "Sri Lanka.", + "name": "ERN", + "description": "Eritrean Nakfa (ERN).", "isDeprecated": false, "deprecationReason": null }, { - "name": "VC", - "description": "St. Vincent & Grenadines.", + "name": "ETB", + "description": "Ethiopian Birr (ETB).", "isDeprecated": false, "deprecationReason": null }, { - "name": "SD", - "description": "Sudan.", + "name": "FKP", + "description": "Falkland Islands Pounds (FKP).", "isDeprecated": false, "deprecationReason": null }, { - "name": "SR", - "description": "Suriname.", + "name": "XPF", + "description": "CFP Franc (XPF).", "isDeprecated": false, "deprecationReason": null }, { - "name": "SJ", - "description": "Svalbard & Jan Mayen.", + "name": "FJD", + "description": "Fijian Dollars (FJD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "SE", - "description": "Sweden.", + "name": "GIP", + "description": "Gibraltar Pounds (GIP).", "isDeprecated": false, "deprecationReason": null }, { - "name": "CH", - "description": "Switzerland.", + "name": "GMD", + "description": "Gambian Dalasi (GMD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "SY", - "description": "Syria.", + "name": "GHS", + "description": "Ghanaian Cedi (GHS).", "isDeprecated": false, "deprecationReason": null }, { - "name": "TW", - "description": "Taiwan.", + "name": "GTQ", + "description": "Guatemalan Quetzal (GTQ).", "isDeprecated": false, "deprecationReason": null }, { - "name": "TJ", - "description": "Tajikistan.", + "name": "GYD", + "description": "Guyanese Dollar (GYD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "TZ", - "description": "Tanzania.", + "name": "GEL", + "description": "Georgian Lari (GEL).", "isDeprecated": false, "deprecationReason": null }, { - "name": "TH", - "description": "Thailand.", + "name": "HTG", + "description": "Haitian Gourde (HTG).", "isDeprecated": false, "deprecationReason": null }, { - "name": "TL", - "description": "Timor-Leste.", + "name": "HNL", + "description": "Honduran Lempira (HNL).", "isDeprecated": false, "deprecationReason": null }, { - "name": "TG", - "description": "Togo.", + "name": "HKD", + "description": "Hong Kong Dollars (HKD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "TK", - "description": "Tokelau.", + "name": "HUF", + "description": "Hungarian Forint (HUF).", "isDeprecated": false, "deprecationReason": null }, { - "name": "TO", - "description": "Tonga.", + "name": "ISK", + "description": "Icelandic Kronur (ISK).", "isDeprecated": false, "deprecationReason": null }, { - "name": "TT", - "description": "Trinidad & Tobago.", + "name": "INR", + "description": "Indian Rupees (INR).", "isDeprecated": false, "deprecationReason": null }, { - "name": "TA", - "description": "Tristan da Cunha.", + "name": "IDR", + "description": "Indonesian Rupiah (IDR).", "isDeprecated": false, "deprecationReason": null }, { - "name": "TN", - "description": "Tunisia.", + "name": "ILS", + "description": "Israeli New Shekel (NIS).", "isDeprecated": false, "deprecationReason": null }, { - "name": "TR", - "description": "Turkey.", + "name": "IQD", + "description": "Iraqi Dinar (IQD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "TM", - "description": "Turkmenistan.", + "name": "JMD", + "description": "Jamaican Dollars (JMD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "TC", - "description": "Turks & Caicos Islands.", + "name": "JPY", + "description": "Japanese Yen (JPY).", "isDeprecated": false, "deprecationReason": null }, { - "name": "TV", - "description": "Tuvalu.", + "name": "JEP", + "description": "Jersey Pound.", "isDeprecated": false, "deprecationReason": null }, { - "name": "UG", - "description": "Uganda.", + "name": "JOD", + "description": "Jordanian Dinar (JOD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "UA", - "description": "Ukraine.", + "name": "KZT", + "description": "Kazakhstani Tenge (KZT).", "isDeprecated": false, "deprecationReason": null }, { - "name": "AE", - "description": "United Arab Emirates.", + "name": "KES", + "description": "Kenyan Shilling (KES).", "isDeprecated": false, "deprecationReason": null }, { - "name": "GB", - "description": "United Kingdom.", + "name": "KID", + "description": "Kiribati Dollar (KID).", "isDeprecated": false, "deprecationReason": null }, { - "name": "US", - "description": "United States.", + "name": "KWD", + "description": "Kuwaiti Dinar (KWD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "UM", - "description": "U.S. Outlying Islands.", + "name": "KGS", + "description": "Kyrgyzstani Som (KGS).", "isDeprecated": false, "deprecationReason": null }, { - "name": "UY", - "description": "Uruguay.", + "name": "LAK", + "description": "Laotian Kip (LAK).", "isDeprecated": false, "deprecationReason": null }, { - "name": "UZ", - "description": "Uzbekistan.", + "name": "LVL", + "description": "Latvian Lati (LVL).", "isDeprecated": false, "deprecationReason": null }, { - "name": "VU", - "description": "Vanuatu.", + "name": "LBP", + "description": "Lebanese Pounds (LBP).", "isDeprecated": false, "deprecationReason": null }, { - "name": "VE", - "description": "Venezuela.", + "name": "LSL", + "description": "Lesotho Loti (LSL).", "isDeprecated": false, "deprecationReason": null }, { - "name": "VN", - "description": "Vietnam.", + "name": "LRD", + "description": "Liberian Dollar (LRD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "VG", - "description": "British Virgin Islands.", + "name": "LTL", + "description": "Lithuanian Litai (LTL).", "isDeprecated": false, "deprecationReason": null }, { - "name": "WF", - "description": "Wallis & Futuna.", + "name": "MGA", + "description": "Malagasy Ariary (MGA).", "isDeprecated": false, "deprecationReason": null }, { - "name": "EH", - "description": "Western Sahara.", + "name": "MKD", + "description": "Macedonia Denar (MKD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "YE", - "description": "Yemen.", + "name": "MOP", + "description": "Macanese Pataca (MOP).", "isDeprecated": false, "deprecationReason": null }, { - "name": "ZM", - "description": "Zambia.", + "name": "MWK", + "description": "Malawian Kwacha (MWK).", "isDeprecated": false, "deprecationReason": null }, { - "name": "ZW", - "description": "Zimbabwe.", + "name": "MVR", + "description": "Maldivian Rufiyaa (MVR).", "isDeprecated": false, "deprecationReason": null }, { - "name": "ZZ", - "description": "Unknown Region.", + "name": "MRU", + "description": "Mauritanian Ouguiya (MRU).", "isDeprecated": false, "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CreditCard", - "description": "Credit card information used for a payment.", - "fields": [ + }, { - "name": "brand", - "description": "The brand of the credit card.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, + "name": "MXN", + "description": "Mexican Pesos (MXN).", "isDeprecated": false, "deprecationReason": null }, { - "name": "expiryMonth", - "description": "The expiry month of the credit card.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, + "name": "MYR", + "description": "Malaysian Ringgits (MYR).", "isDeprecated": false, "deprecationReason": null }, { - "name": "expiryYear", - "description": "The expiry year of the credit card.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, + "name": "MUR", + "description": "Mauritian Rupee (MUR).", "isDeprecated": false, "deprecationReason": null }, { - "name": "firstDigits", - "description": "The credit card's BIN number.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, + "name": "MDL", + "description": "Moldovan Leu (MDL).", "isDeprecated": false, "deprecationReason": null }, { - "name": "firstName", - "description": "The first name of the card holder.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, + "name": "MAD", + "description": "Moroccan Dirham.", "isDeprecated": false, "deprecationReason": null }, { - "name": "lastDigits", - "description": "The last 4 digits of the credit card.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, + "name": "MNT", + "description": "Mongolian Tugrik.", "isDeprecated": false, "deprecationReason": null }, { - "name": "lastName", - "description": "The last name of the card holder.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, + "name": "MZN", + "description": "Mozambican Metical.", "isDeprecated": false, "deprecationReason": null }, { - "name": "maskedNumber", - "description": "The masked credit card number with only the last 4 digits displayed.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, + "name": "NAD", + "description": "Namibian Dollar.", "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "CreditCardPaymentInputV2", - "description": "Specifies the fields required to complete a checkout with\na Shopify vaulted credit card payment.\n", - "fields": null, - "inputFields": [ + }, { - "name": "billingAddress", - "description": "The billing address for the payment.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "MailingAddressInput", - "ofType": null - } - }, - "defaultValue": null + "name": "NPR", + "description": "Nepalese Rupee (NPR).", + "isDeprecated": false, + "deprecationReason": null }, { - "name": "idempotencyKey", - "description": "A unique client generated key used to avoid duplicate charges. When a duplicate payment is found, the original is returned instead of creating a new one. For more information, refer to [Idempotent requests](https://shopify.dev/api/usage/idempotent-requests).", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "paymentAmount", - "description": "The amount and currency of the payment.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "MoneyInput", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "test", - "description": "Executes the payment in test mode if possible. Defaults to `false`.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false" - }, - { - "name": "vaultId", - "description": "The ID returned by Shopify's Card Vault.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "CropRegion", - "description": "The part of the image that should remain after cropping.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "CENTER", - "description": "Keep the center of the image.", + "name": "ANG", + "description": "Netherlands Antillean Guilder.", "isDeprecated": false, "deprecationReason": null }, { - "name": "TOP", - "description": "Keep the top of the image.", + "name": "NZD", + "description": "New Zealand Dollars (NZD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "BOTTOM", - "description": "Keep the bottom of the image.", + "name": "NIO", + "description": "Nicaraguan Córdoba (NIO).", "isDeprecated": false, "deprecationReason": null }, { - "name": "LEFT", - "description": "Keep the left of the image.", + "name": "NGN", + "description": "Nigerian Naira (NGN).", "isDeprecated": false, "deprecationReason": null }, { - "name": "RIGHT", - "description": "Keep the right of the image.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Currency", - "description": "A currency.", - "fields": [ - { - "name": "isoCode", - "description": "The ISO code of the currency.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "CurrencyCode", - "ofType": null - } - }, + "name": "NOK", + "description": "Norwegian Kroner (NOK).", "isDeprecated": false, "deprecationReason": null }, { - "name": "name", - "description": "The name of the currency.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, + "name": "OMR", + "description": "Omani Rial (OMR).", "isDeprecated": false, "deprecationReason": null }, { - "name": "symbol", - "description": "The symbol of the currency.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "CurrencyCode", - "description": "The three-letter currency codes that represent the world currencies used in\nstores. These include standard ISO 4217 codes, legacy codes,\nand non-standard codes.\n", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "USD", - "description": "United States Dollars (USD).", + "name": "PAB", + "description": "Panamian Balboa (PAB).", "isDeprecated": false, "deprecationReason": null }, { - "name": "EUR", - "description": "Euro (EUR).", + "name": "PKR", + "description": "Pakistani Rupee (PKR).", "isDeprecated": false, "deprecationReason": null }, { - "name": "GBP", - "description": "United Kingdom Pounds (GBP).", + "name": "PGK", + "description": "Papua New Guinean Kina (PGK).", "isDeprecated": false, "deprecationReason": null }, { - "name": "CAD", - "description": "Canadian Dollars (CAD).", + "name": "PYG", + "description": "Paraguayan Guarani (PYG).", "isDeprecated": false, "deprecationReason": null }, { - "name": "AFN", - "description": "Afghan Afghani (AFN).", + "name": "PEN", + "description": "Peruvian Nuevo Sol (PEN).", "isDeprecated": false, "deprecationReason": null }, { - "name": "ALL", - "description": "Albanian Lek (ALL).", + "name": "PHP", + "description": "Philippine Peso (PHP).", "isDeprecated": false, "deprecationReason": null }, { - "name": "DZD", - "description": "Algerian Dinar (DZD).", + "name": "PLN", + "description": "Polish Zlotych (PLN).", "isDeprecated": false, "deprecationReason": null }, { - "name": "AOA", - "description": "Angolan Kwanza (AOA).", + "name": "QAR", + "description": "Qatari Rial (QAR).", "isDeprecated": false, "deprecationReason": null }, { - "name": "ARS", - "description": "Argentine Pesos (ARS).", + "name": "RON", + "description": "Romanian Lei (RON).", "isDeprecated": false, "deprecationReason": null }, { - "name": "AMD", - "description": "Armenian Dram (AMD).", + "name": "RUB", + "description": "Russian Rubles (RUB).", "isDeprecated": false, "deprecationReason": null }, { - "name": "AWG", - "description": "Aruban Florin (AWG).", + "name": "RWF", + "description": "Rwandan Franc (RWF).", "isDeprecated": false, "deprecationReason": null }, { - "name": "AUD", - "description": "Australian Dollars (AUD).", + "name": "WST", + "description": "Samoan Tala (WST).", "isDeprecated": false, "deprecationReason": null }, { - "name": "BBD", - "description": "Barbadian Dollar (BBD).", + "name": "SHP", + "description": "Saint Helena Pounds (SHP).", "isDeprecated": false, "deprecationReason": null }, { - "name": "AZN", - "description": "Azerbaijani Manat (AZN).", + "name": "SAR", + "description": "Saudi Riyal (SAR).", "isDeprecated": false, "deprecationReason": null }, { - "name": "BDT", - "description": "Bangladesh Taka (BDT).", + "name": "RSD", + "description": "Serbian dinar (RSD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "BSD", - "description": "Bahamian Dollar (BSD).", + "name": "SCR", + "description": "Seychellois Rupee (SCR).", "isDeprecated": false, "deprecationReason": null }, { - "name": "BHD", - "description": "Bahraini Dinar (BHD).", + "name": "SGD", + "description": "Singapore Dollars (SGD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "BIF", - "description": "Burundian Franc (BIF).", + "name": "SDG", + "description": "Sudanese Pound (SDG).", "isDeprecated": false, "deprecationReason": null }, { - "name": "BZD", - "description": "Belize Dollar (BZD).", + "name": "SOS", + "description": "Somali Shilling (SOS).", "isDeprecated": false, "deprecationReason": null }, { - "name": "BMD", - "description": "Bermudian Dollar (BMD).", + "name": "SYP", + "description": "Syrian Pound (SYP).", "isDeprecated": false, "deprecationReason": null }, { - "name": "BTN", - "description": "Bhutanese Ngultrum (BTN).", + "name": "ZAR", + "description": "South African Rand (ZAR).", "isDeprecated": false, "deprecationReason": null }, { - "name": "BAM", - "description": "Bosnia and Herzegovina Convertible Mark (BAM).", + "name": "KRW", + "description": "South Korean Won (KRW).", "isDeprecated": false, "deprecationReason": null }, { - "name": "BRL", - "description": "Brazilian Real (BRL).", + "name": "SSP", + "description": "South Sudanese Pound (SSP).", "isDeprecated": false, "deprecationReason": null }, { - "name": "BOB", - "description": "Bolivian Boliviano (BOB).", + "name": "SBD", + "description": "Solomon Islands Dollar (SBD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "BWP", - "description": "Botswana Pula (BWP).", + "name": "LKR", + "description": "Sri Lankan Rupees (LKR).", "isDeprecated": false, "deprecationReason": null }, { - "name": "BND", - "description": "Brunei Dollar (BND).", + "name": "SRD", + "description": "Surinamese Dollar (SRD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "BGN", - "description": "Bulgarian Lev (BGN).", + "name": "SZL", + "description": "Swazi Lilangeni (SZL).", "isDeprecated": false, "deprecationReason": null }, { - "name": "MMK", - "description": "Burmese Kyat (MMK).", + "name": "SEK", + "description": "Swedish Kronor (SEK).", "isDeprecated": false, "deprecationReason": null }, { - "name": "KHR", - "description": "Cambodian Riel.", + "name": "CHF", + "description": "Swiss Francs (CHF).", "isDeprecated": false, "deprecationReason": null }, { - "name": "CVE", - "description": "Cape Verdean escudo (CVE).", + "name": "TWD", + "description": "Taiwan Dollars (TWD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "KYD", - "description": "Cayman Dollars (KYD).", + "name": "THB", + "description": "Thai baht (THB).", "isDeprecated": false, "deprecationReason": null }, { - "name": "XAF", - "description": "Central African CFA Franc (XAF).", + "name": "TZS", + "description": "Tanzanian Shilling (TZS).", "isDeprecated": false, "deprecationReason": null }, { - "name": "CLP", - "description": "Chilean Peso (CLP).", + "name": "TTD", + "description": "Trinidad and Tobago Dollars (TTD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "CNY", - "description": "Chinese Yuan Renminbi (CNY).", + "name": "TND", + "description": "Tunisian Dinar (TND).", "isDeprecated": false, "deprecationReason": null }, { - "name": "COP", - "description": "Colombian Peso (COP).", + "name": "TRY", + "description": "Turkish Lira (TRY).", "isDeprecated": false, "deprecationReason": null }, { - "name": "KMF", - "description": "Comorian Franc (KMF).", + "name": "TMT", + "description": "Turkmenistani Manat (TMT).", "isDeprecated": false, "deprecationReason": null }, { - "name": "CDF", - "description": "Congolese franc (CDF).", + "name": "UGX", + "description": "Ugandan Shilling (UGX).", "isDeprecated": false, "deprecationReason": null }, { - "name": "CRC", - "description": "Costa Rican Colones (CRC).", + "name": "UAH", + "description": "Ukrainian Hryvnia (UAH).", "isDeprecated": false, "deprecationReason": null }, { - "name": "HRK", - "description": "Croatian Kuna (HRK).", + "name": "AED", + "description": "United Arab Emirates Dirham (AED).", "isDeprecated": false, "deprecationReason": null }, { - "name": "CZK", - "description": "Czech Koruny (CZK).", + "name": "UYU", + "description": "Uruguayan Pesos (UYU).", "isDeprecated": false, "deprecationReason": null }, { - "name": "DKK", - "description": "Danish Kroner (DKK).", + "name": "UZS", + "description": "Uzbekistan som (UZS).", "isDeprecated": false, "deprecationReason": null }, { - "name": "DOP", - "description": "Dominican Peso (DOP).", + "name": "VUV", + "description": "Vanuatu Vatu (VUV).", "isDeprecated": false, "deprecationReason": null }, { - "name": "XCD", - "description": "East Caribbean Dollar (XCD).", + "name": "VES", + "description": "Venezuelan Bolivares Soberanos (VES).", "isDeprecated": false, "deprecationReason": null }, { - "name": "EGP", - "description": "Egyptian Pound (EGP).", + "name": "VND", + "description": "Vietnamese đồng (VND).", "isDeprecated": false, "deprecationReason": null }, { - "name": "ERN", - "description": "Eritrean Nakfa (ERN).", + "name": "XOF", + "description": "West African CFA franc (XOF).", "isDeprecated": false, "deprecationReason": null }, { - "name": "ETB", - "description": "Ethiopian Birr (ETB).", + "name": "YER", + "description": "Yemeni Rial (YER).", "isDeprecated": false, "deprecationReason": null }, { - "name": "FKP", - "description": "Falkland Islands Pounds (FKP).", + "name": "ZMW", + "description": "Zambian Kwacha (ZMW).", "isDeprecated": false, "deprecationReason": null }, { - "name": "XPF", - "description": "CFP Franc (XPF).", + "name": "BYN", + "description": "Belarusian Ruble (BYN).", "isDeprecated": false, "deprecationReason": null }, { - "name": "FJD", - "description": "Fijian Dollars (FJD).", - "isDeprecated": false, - "deprecationReason": null + "name": "BYR", + "description": "Belarusian Ruble (BYR).", + "isDeprecated": true, + "deprecationReason": "`BYR` is deprecated. Use `BYN` available from version `2021-01` onwards instead." }, { - "name": "GIP", - "description": "Gibraltar Pounds (GIP).", + "name": "DJF", + "description": "Djiboutian Franc (DJF).", "isDeprecated": false, "deprecationReason": null }, { - "name": "GMD", - "description": "Gambian Dalasi (GMD).", + "name": "GNF", + "description": "Guinean Franc (GNF).", "isDeprecated": false, "deprecationReason": null }, { - "name": "GHS", - "description": "Ghanaian Cedi (GHS).", + "name": "IRR", + "description": "Iranian Rial (IRR).", "isDeprecated": false, "deprecationReason": null }, { - "name": "GTQ", - "description": "Guatemalan Quetzal (GTQ).", + "name": "LYD", + "description": "Libyan Dinar (LYD).", "isDeprecated": false, "deprecationReason": null }, { - "name": "GYD", - "description": "Guyanese Dollar (GYD).", + "name": "SLL", + "description": "Sierra Leonean Leone (SLL).", "isDeprecated": false, "deprecationReason": null }, { - "name": "GEL", - "description": "Georgian Lari (GEL).", - "isDeprecated": false, - "deprecationReason": null + "name": "STD", + "description": "Sao Tome And Principe Dobra (STD).", + "isDeprecated": true, + "deprecationReason": "`STD` is deprecated. Use `STN` available from version `2022-07` onwards instead." }, { - "name": "HTG", - "description": "Haitian Gourde (HTG).", + "name": "STN", + "description": "Sao Tome And Principe Dobra (STN).", "isDeprecated": false, "deprecationReason": null }, { - "name": "HNL", - "description": "Honduran Lempira (HNL).", + "name": "TJS", + "description": "Tajikistani Somoni (TJS).", "isDeprecated": false, "deprecationReason": null }, { - "name": "HKD", - "description": "Hong Kong Dollars (HKD).", + "name": "TOP", + "description": "Tongan Pa'anga (TOP).", "isDeprecated": false, "deprecationReason": null }, { - "name": "HUF", - "description": "Hungarian Forint (HUF).", + "name": "VED", + "description": "Venezuelan Bolivares (VED).", "isDeprecated": false, "deprecationReason": null }, { - "name": "ISK", - "description": "Icelandic Kronur (ISK).", - "isDeprecated": false, - "deprecationReason": null + "name": "VEF", + "description": "Venezuelan Bolivares (VEF).", + "isDeprecated": true, + "deprecationReason": "`VEF` is deprecated. Use `VES` available from version `2020-10` onwards instead." }, { - "name": "INR", - "description": "Indian Rupees (INR).", + "name": "XXX", + "description": "Unrecognized currency.", "isDeprecated": false, "deprecationReason": null - }, + } + ], + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "Customer", + "description": "A customer represents a customer account with the shop. Customer accounts store contact information for the customer, saving logged-in customers the trouble of having to provide it at every checkout.", + "fields": [ { - "name": "IDR", - "description": "Indonesian Rupiah (IDR).", + "name": "acceptsMarketing", + "description": "Indicates whether the customer has consented to be sent marketing material via email.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "ILS", - "description": "Israeli New Shekel (NIS).", + "name": "addresses", + "description": "A list of addresses for the customer.", + "args": [ + { + "name": "first", + "description": "Returns up to the first `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "after", + "description": "Returns the elements that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "last", + "description": "Returns up to the last `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "before", + "description": "Returns the elements that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "reverse", + "description": "Reverse the order of the underlying list.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false" + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "MailingAddressConnection", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "IQD", - "description": "Iraqi Dinar (IQD).", + "name": "createdAt", + "description": "The date and time when the customer was created.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "DateTime", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "JMD", - "description": "Jamaican Dollars (JMD).", + "name": "defaultAddress", + "description": "The customer’s default address.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "MailingAddress", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "JPY", - "description": "Japanese Yen (JPY).", + "name": "displayName", + "description": "The customer’s name, email or phone number.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "JEP", - "description": "Jersey Pound.", + "name": "email", + "description": "The customer’s email address.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "JOD", - "description": "Jordanian Dinar (JOD).", + "name": "firstName", + "description": "The customer’s first name.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "KZT", - "description": "Kazakhstani Tenge (KZT).", + "name": "id", + "description": "A unique ID for the customer.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "KES", - "description": "Kenyan Shilling (KES).", + "name": "lastName", + "description": "The customer’s last name.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "KID", - "description": "Kiribati Dollar (KID).", + "name": "metafield", + "description": "Returns a metafield found by namespace and key.", + "args": [ + { + "name": "namespace", + "description": "The container the metafield belongs to. If omitted, the app-reserved namespace will be used.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "key", + "description": "The identifier for the metafield.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "Metafield", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "KWD", - "description": "Kuwaiti Dinar (KWD).", + "name": "metafields", + "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.", + "args": [ + { + "name": "identifiers", + "description": "The list of metafields to retrieve by namespace and key.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "HasMetafieldsIdentifier", + "ofType": null + } + } + } + }, + "defaultValue": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Metafield", + "ofType": null + } + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "KGS", - "description": "Kyrgyzstani Som (KGS).", + "name": "numberOfOrders", + "description": "The number of orders that the customer has made at the store in their lifetime.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "UnsignedInt64", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "LAK", - "description": "Laotian Kip (LAK).", + "name": "orders", + "description": "The orders associated with the customer.", + "args": [ + { + "name": "first", + "description": "Returns up to the first `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "after", + "description": "Returns the elements that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "last", + "description": "Returns up to the last `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "before", + "description": "Returns the elements that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "reverse", + "description": "Reverse the order of the underlying list.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false" + }, + { + "name": "sortKey", + "description": "Sort the underlying list by the given key.", + "type": { + "kind": "ENUM", + "name": "OrderSortKeys", + "ofType": null + }, + "defaultValue": "ID" + }, + { + "name": "query", + "description": "Apply one or multiple filters to the query.\n| name | description | acceptable_values | default_value | example_use |\n| ---- | ---- | ---- | ---- | ---- |\n| processed_at |\nRefer to the detailed [search syntax](https://shopify.dev/api/usage/search-syntax) for more information about using filters.\n", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "OrderConnection", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "LVL", - "description": "Latvian Lati (LVL).", + "name": "phone", + "description": "The customer’s phone number.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "LBP", - "description": "Lebanese Pounds (LBP).", + "name": "tags", + "description": "A comma separated list of tags that have been added to the customer.\nAdditional access scope required: unauthenticated_read_customer_tags.\n", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "LSL", - "description": "Lesotho Loti (LSL).", + "name": "updatedAt", + "description": "The date and time when the customer information was updated.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "DateTime", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [ { - "name": "LRD", - "description": "Liberian Dollar (LRD).", - "isDeprecated": false, - "deprecationReason": null - }, + "kind": "INTERFACE", + "name": "HasMetafields", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "CustomerAccessToken", + "description": "A CustomerAccessToken represents the unique token required to make modifications to the customer object.", + "fields": [ { - "name": "LTL", - "description": "Lithuanian Litai (LTL).", + "name": "accessToken", + "description": "The customer’s access token.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "MGA", - "description": "Malagasy Ariary (MGA).", + "name": "expiresAt", + "description": "The date and time when the customer access token expires.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "DateTime", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "CustomerAccessTokenCreateInput", + "description": "The input fields required to create a customer access token.", + "fields": null, + "inputFields": [ + { + "name": "email", + "description": "The email associated to the customer.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null }, { - "name": "MKD", - "description": "Macedonia Denar (MKD).", + "name": "password", + "description": "The login password to be used by the customer.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "CustomerAccessTokenCreatePayload", + "description": "Return type for `customerAccessTokenCreate` mutation.", + "fields": [ + { + "name": "customerAccessToken", + "description": "The newly created customer access token object.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "CustomerAccessToken", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "MOP", - "description": "Macanese Pataca (MOP).", + "name": "customerUserErrors", + "description": "The list of errors that occurred from executing the mutation.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "CustomerUserError", + "ofType": null + } + } + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "MWK", - "description": "Malawian Kwacha (MWK).", + "name": "userErrors", + "description": "The list of errors that occurred from executing the mutation.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "UserError", + "ofType": null + } + } + } + }, + "isDeprecated": true, + "deprecationReason": "Use `customerUserErrors` instead." + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "CustomerAccessTokenCreateWithMultipassPayload", + "description": "Return type for `customerAccessTokenCreateWithMultipass` mutation.", + "fields": [ + { + "name": "customerAccessToken", + "description": "An access token object associated with the customer.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "CustomerAccessToken", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "MVR", - "description": "Maldivian Rufiyaa (MVR).", + "name": "customerUserErrors", + "description": "The list of errors that occurred from executing the mutation.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "CustomerUserError", + "ofType": null + } + } + } + }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "CustomerAccessTokenDeletePayload", + "description": "Return type for `customerAccessTokenDelete` mutation.", + "fields": [ { - "name": "MRU", - "description": "Mauritanian Ouguiya (MRU).", + "name": "deletedAccessToken", + "description": "The destroyed access token.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "MXN", - "description": "Mexican Pesos (MXN).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MYR", - "description": "Malaysian Ringgits (MYR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MUR", - "description": "Mauritian Rupee (MUR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MDL", - "description": "Moldovan Leu (MDL).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MAD", - "description": "Moroccan Dirham.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MNT", - "description": "Mongolian Tugrik.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MZN", - "description": "Mozambican Metical.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NAD", - "description": "Namibian Dollar.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NPR", - "description": "Nepalese Rupee (NPR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ANG", - "description": "Netherlands Antillean Guilder.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NZD", - "description": "New Zealand Dollars (NZD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NIO", - "description": "Nicaraguan Córdoba (NIO).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NGN", - "description": "Nigerian Naira (NGN).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "NOK", - "description": "Norwegian Kroner (NOK).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "OMR", - "description": "Omani Rial (OMR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PAB", - "description": "Panamian Balboa (PAB).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PKR", - "description": "Pakistani Rupee (PKR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PGK", - "description": "Papua New Guinean Kina (PGK).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PYG", - "description": "Paraguayan Guarani (PYG).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PEN", - "description": "Peruvian Nuevo Sol (PEN).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PHP", - "description": "Philippine Peso (PHP).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PLN", - "description": "Polish Zlotych (PLN).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "QAR", - "description": "Qatari Rial (QAR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RON", - "description": "Romanian Lei (RON).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RUB", - "description": "Russian Rubles (RUB).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RWF", - "description": "Rwandan Franc (RWF).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "WST", - "description": "Samoan Tala (WST).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SHP", - "description": "Saint Helena Pounds (SHP).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SAR", - "description": "Saudi Riyal (SAR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RSD", - "description": "Serbian dinar (RSD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SCR", - "description": "Seychellois Rupee (SCR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SGD", - "description": "Singapore Dollars (SGD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SDG", - "description": "Sudanese Pound (SDG).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SOS", - "description": "Somali Shilling (SOS).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SYP", - "description": "Syrian Pound (SYP).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ZAR", - "description": "South African Rand (ZAR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "KRW", - "description": "South Korean Won (KRW).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SSP", - "description": "South Sudanese Pound (SSP).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SBD", - "description": "Solomon Islands Dollar (SBD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LKR", - "description": "Sri Lankan Rupees (LKR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SRD", - "description": "Surinamese Dollar (SRD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SZL", - "description": "Swazi Lilangeni (SZL).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SEK", - "description": "Swedish Kronor (SEK).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CHF", - "description": "Swiss Francs (CHF).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TWD", - "description": "Taiwan Dollars (TWD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "THB", - "description": "Thai baht (THB).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TZS", - "description": "Tanzanian Shilling (TZS).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TTD", - "description": "Trinidad and Tobago Dollars (TTD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TND", - "description": "Tunisian Dinar (TND).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TRY", - "description": "Turkish Lira (TRY).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TMT", - "description": "Turkmenistani Manat (TMT).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UGX", - "description": "Ugandan Shilling (UGX).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UAH", - "description": "Ukrainian Hryvnia (UAH).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AED", - "description": "United Arab Emirates Dirham (AED).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UYU", - "description": "Uruguayan Pesos (UYU).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UZS", - "description": "Uzbekistan som (UZS).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VUV", - "description": "Vanuatu Vatu (VUV).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VES", - "description": "Venezuelan Bolivares Soberanos (VES).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VND", - "description": "Vietnamese đồng (VND).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "XOF", - "description": "West African CFA franc (XOF).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "YER", - "description": "Yemeni Rial (YER).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ZMW", - "description": "Zambian Kwacha (ZMW).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BYN", - "description": "Belarusian Ruble (BYN).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "BYR", - "description": "Belarusian Ruble (BYR).", - "isDeprecated": true, - "deprecationReason": "`BYR` is deprecated. Use `BYN` available from version `2021-01` onwards instead." - }, - { - "name": "DJF", - "description": "Djiboutian Franc (DJF).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "GNF", - "description": "Guinean Franc (GNF).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "IRR", - "description": "Iranian Rial (IRR).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LYD", - "description": "Libyan Dinar (LYD).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SLL", - "description": "Sierra Leonean Leone (SLL).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "STD", - "description": "Sao Tome And Principe Dobra (STD).", - "isDeprecated": true, - "deprecationReason": "`STD` is deprecated. Use `STN` available from version `2022-07` onwards instead." - }, - { - "name": "STN", - "description": "Sao Tome And Principe Dobra (STN).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TJS", - "description": "Tajikistani Somoni (TJS).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TOP", - "description": "Tongan Pa'anga (TOP).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VED", - "description": "Venezuelan Bolivares (VED).", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VEF", - "description": "Venezuelan Bolivares (VEF).", - "isDeprecated": true, - "deprecationReason": "`VEF` is deprecated. Use `VES` available from version `2020-10` onwards instead." - }, - { - "name": "XXX", - "description": "Unrecognized currency.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Customer", - "description": "A customer represents a customer account with the shop. Customer accounts store contact information for the customer, saving logged-in customers the trouble of having to provide it at every checkout.", - "fields": [ - { - "name": "acceptsMarketing", - "description": "Indicates whether the customer has consented to be sent marketing material via email.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "addresses", - "description": "A list of addresses for the customer.", - "args": [ - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false" - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MailingAddressConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "createdAt", - "description": "The date and time when the customer was created.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "defaultAddress", - "description": "The customer’s default address.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MailingAddress", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "displayName", - "description": "The customer’s name, email or phone number.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "email", - "description": "The customer’s email address.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "firstName", - "description": "The customer’s first name.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A unique ID for the customer.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lastIncompleteCheckout", - "description": "The customer's most recently updated, incomplete checkout.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lastName", - "description": "The customer’s last name.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metafield", - "description": "Returns a metafield found by namespace and key.", - "args": [ - { - "name": "key", - "description": "The identifier for the metafield.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "namespace", - "description": "The container the metafield belongs to.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metafields", - "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.", - "args": [ - { - "name": "identifiers", - "description": "The list of metafields to retrieve by namespace and key.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "HasMetafieldsIdentifier", - "ofType": null - } - } - } - }, - "defaultValue": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "numberOfOrders", - "description": "The number of orders that the customer has made at the store in their lifetime.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "UnsignedInt64", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "orders", - "description": "The orders associated with the customer.", - "args": [ - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "sortKey", - "description": "Sort the underlying list by the given key.", - "type": { - "kind": "ENUM", - "name": "OrderSortKeys", - "ofType": null - }, - "defaultValue": "ID" - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false" - }, - { - "name": "query", - "description": "Supported filter parameters:\n - `processed_at`\n\nSee the detailed [search syntax](https://shopify.dev/api/usage/search-syntax)\nfor more information about using filters.\n", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "OrderConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "phone", - "description": "The customer’s phone number.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "tags", - "description": "A comma separated list of tags that have been added to the customer.\nAdditional access scope required: unauthenticated_read_customer_tags.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "updatedAt", - "description": "The date and time when the customer information was updated.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "HasMetafields", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CustomerAccessToken", - "description": "A CustomerAccessToken represents the unique token required to make modifications to the customer object.", - "fields": [ - { - "name": "accessToken", - "description": "The customer’s access token.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "expiresAt", - "description": "The date and time when the customer access token expires.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "CustomerAccessTokenCreateInput", - "description": "The input fields required to create a customer access token.", - "fields": null, - "inputFields": [ - { - "name": "email", - "description": "The email associated to the customer.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "password", - "description": "The login password to be used by the customer.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CustomerAccessTokenCreatePayload", - "description": "Return type for `customerAccessTokenCreate` mutation.", - "fields": [ - { - "name": "customerAccessToken", - "description": "The newly created customer access token object.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "CustomerAccessToken", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CustomerUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "userErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "UserError", - "ofType": null - } - } - } - }, - "isDeprecated": true, - "deprecationReason": "Use `customerUserErrors` instead." - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CustomerAccessTokenCreateWithMultipassPayload", - "description": "Return type for `customerAccessTokenCreateWithMultipass` mutation.", - "fields": [ - { - "name": "customerAccessToken", - "description": "An access token object associated with the customer.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "CustomerAccessToken", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "customerUserErrors", - "description": "The list of errors that occurred from executing the mutation.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "CustomerUserError", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "CustomerAccessTokenDeletePayload", - "description": "Return type for `customerAccessTokenDelete` mutation.", - "fields": [ - { - "name": "deletedAccessToken", - "description": "The destroyed access token.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "deletedCustomerAccessTokenId", - "description": "ID of the destroyed customer access token.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, + "name": "deletedCustomerAccessTokenId", + "description": "ID of the destroyed customer access token.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, @@ -13822,20 +11872,6 @@ "description": "The input fields to create a new customer.", "fields": null, "inputFields": [ - { - "name": "email", - "description": "The customer’s email.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - }, { "name": "firstName", "description": "The customer’s first name.", @@ -13857,21 +11893,25 @@ "defaultValue": null }, { - "name": "phone", - "description": "A unique phone number for the customer.\n\nFormatted using E.164 standard. For example, _+16135551111_.\n", + "name": "email", + "description": "The customer’s email.", "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } }, "defaultValue": null }, { - "name": "acceptsMarketing", - "description": "Indicates whether the customer has consented to be sent marketing material via email.", + "name": "phone", + "description": "A unique phone number for the customer.\n\nFormatted using E.164 standard. For example, _+16135551111_.\n", "type": { "kind": "SCALAR", - "name": "Boolean", + "name": "String", "ofType": null }, "defaultValue": null @@ -13889,6 +11929,16 @@ } }, "defaultValue": null + }, + { + "name": "acceptsMarketing", + "description": "Indicates whether the customer has consented to be sent marketing material via email.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": null } ], "interfaces": null, @@ -14287,8 +12337,8 @@ "fields": null, "inputFields": [ { - "name": "password", - "description": "New password that will be set as part of the reset password process.", + "name": "resetToken", + "description": "The reset token required to reset the customer’s password.", "type": { "kind": "NON_NULL", "name": null, @@ -14301,8 +12351,8 @@ "defaultValue": null }, { - "name": "resetToken", - "description": "The reset token required to reset the customer’s password.", + "name": "password", + "description": "New password that will be set as part of the reset password process.", "type": { "kind": "NON_NULL", "name": null, @@ -14409,8 +12459,8 @@ "fields": null, "inputFields": [ { - "name": "email", - "description": "The customer’s email.", + "name": "firstName", + "description": "The customer’s first name.", "type": { "kind": "SCALAR", "name": "String", @@ -14419,8 +12469,8 @@ "defaultValue": null }, { - "name": "firstName", - "description": "The customer’s first name.", + "name": "lastName", + "description": "The customer’s last name.", "type": { "kind": "SCALAR", "name": "String", @@ -14429,8 +12479,8 @@ "defaultValue": null }, { - "name": "lastName", - "description": "The customer’s last name.", + "name": "email", + "description": "The customer’s email.", "type": { "kind": "SCALAR", "name": "String", @@ -14439,8 +12489,8 @@ "defaultValue": null }, { - "name": "password", - "description": "The login password used by the customer.", + "name": "phone", + "description": "A unique phone number for the customer.\n\nFormatted using E.164 standard. For example, _+16135551111_. To remove the phone number, specify `null`.\n", "type": { "kind": "SCALAR", "name": "String", @@ -14449,8 +12499,8 @@ "defaultValue": null }, { - "name": "phone", - "description": "A unique phone number for the customer.\n\nFormatted using E.164 standard. For example, _+16135551111_. To remove the phone number, specify `null`.\n", + "name": "password", + "description": "The login password used by the customer.", "type": { "kind": "SCALAR", "name": "String", @@ -14673,6 +12723,26 @@ }, "defaultValue": null }, + { + "name": "oneTimeUse", + "description": "Whether the given delivery address is considered to be a one-time use address. One-time use addresses do not\nget persisted to the buyer's personal addresses when checking out.\n", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false" + }, + { + "name": "deliveryAddressValidationStrategy", + "description": "Defines what kind of address validation is requested.", + "type": { + "kind": "ENUM", + "name": "DeliveryAddressValidationStrategy", + "ofType": null + }, + "defaultValue": "COUNTRY_CODE_ONLY" + }, { "name": "customerAddressId", "description": "The ID of a customer address that is associated with the buyer that is interacting with the cart.\n", @@ -14688,6 +12758,29 @@ "enumValues": null, "possibleTypes": null }, + { + "kind": "ENUM", + "name": "DeliveryAddressValidationStrategy", + "description": "Defines the types of available validation strategies for delivery addresses.\n", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "COUNTRY_CODE_ONLY", + "description": "Only the country code is validated.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "STRICT", + "description": "Strict validation is performed, i.e. all fields in the address are validated\naccording to Shopify's checkout rules. If the address fails validation, the cart will not be updated.\n", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, { "kind": "ENUM", "name": "DeliveryMethodType", @@ -15272,11 +13365,6 @@ "name": "CartUserError", "ofType": null }, - { - "kind": "OBJECT", - "name": "CheckoutUserError", - "ofType": null - }, { "kind": "OBJECT", "name": "CustomerUserError", @@ -15296,6 +13384,11 @@ "kind": "OBJECT", "name": "UserError", "ofType": null + }, + { + "kind": "OBJECT", + "name": "UserErrorsShopPayPaymentRequestSessionUserErrors", + "ofType": null } ] }, @@ -15549,6 +13642,18 @@ "isDeprecated": false, "deprecationReason": null }, + { + "name": "presentation", + "description": "Describes how to present the filter values.\nReturns a value only for filters of type `LIST`. Returns null for other types.\n", + "args": [], + "type": { + "kind": "ENUM", + "name": "FilterPresentation", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, { "name": "type", "description": "An enumeration that denotes the type of data this filter represents.", @@ -15595,6 +13700,35 @@ "enumValues": null, "possibleTypes": null }, + { + "kind": "ENUM", + "name": "FilterPresentation", + "description": "Defines how to present the filter values, specifies the presentation of the filter.\n", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "IMAGE", + "description": "Image presentation, filter values display an image.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "SWATCH", + "description": "Swatch presentation, filter values display color or image patterns.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "TEXT", + "description": "Text presentation, no additional visual display for filter values.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, { "kind": "ENUM", "name": "FilterType", @@ -15661,6 +13795,18 @@ "isDeprecated": false, "deprecationReason": null }, + { + "name": "image", + "description": "The visual representation when the filter's presentation is `IMAGE`.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "MediaImage", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, { "name": "input", "description": "An input object that can be used to filter by this value on the parent field.\n\nThe value is provided as a helper for building dynamic filtering UI. For\nexample, if you have a list of selected `FilterValue` objects, you can combine\ntheir respective `input` values to use in a subsequent query.\n", @@ -15692,6 +13838,18 @@ }, "isDeprecated": false, "deprecationReason": null + }, + { + "name": "swatch", + "description": "The visual representation when the filter's presentation is `SWATCH`.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "Swatch", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null } ], "inputFields": null, @@ -16182,22 +14340,18 @@ "description": "Returns a metafield found by namespace and key.", "args": [ { - "name": "key", - "description": "The identifier for the metafield.", + "name": "namespace", + "description": "The container the metafield belongs to. If omitted, the app-reserved namespace will be used.", "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } + "kind": "SCALAR", + "name": "String", + "ofType": null }, "defaultValue": null }, { - "name": "namespace", - "description": "The container the metafield belongs to.", + "name": "key", + "description": "The identifier for the metafield.", "type": { "kind": "NON_NULL", "name": null, @@ -16224,7 +14378,7 @@ "args": [ { "name": "identifiers", - "description": "The list of metafields to retrieve by namespace and key.", + "description": "The list of metafields to retrieve by namespace and key.\n\nThe input must not contain more than `250` values.", "type": { "kind": "NON_NULL", "name": null, @@ -16286,6 +14440,16 @@ "name": "Collection", "ofType": null }, + { + "kind": "OBJECT", + "name": "Company", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "CompanyLocation", + "ofType": null + }, { "kind": "OBJECT", "name": "Customer", @@ -16321,6 +14485,11 @@ "name": "ProductVariant", "ofType": null }, + { + "kind": "OBJECT", + "name": "SellingPlan", + "ofType": null + }, { "kind": "OBJECT", "name": "Shop", @@ -16335,22 +14504,18 @@ "fields": null, "inputFields": [ { - "name": "key", - "description": "The identifier for the metafield.", + "name": "namespace", + "description": "The container the metafield belongs to. If omitted, the app-reserved namespace will be used.", "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } + "kind": "SCALAR", + "name": "String", + "ofType": null }, "defaultValue": null }, { - "name": "namespace", - "description": "The container the metafield belongs to.", + "name": "key", + "description": "The identifier for the metafield.", "type": { "kind": "NON_NULL", "name": null, @@ -16377,6 +14542,16 @@ "enumValues": null, "possibleTypes": null }, + { + "kind": "SCALAR", + "name": "ISO8601DateTime", + "description": "An ISO 8601-encoded datetime", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, { "kind": "OBJECT", "name": "Image", @@ -16455,18 +14630,8 @@ "description": "The location of the transformed image as a URL.\n\nAll transformation arguments are considered \"best-effort\". If they can be applied to an image, they will be.\nOtherwise any transformations which an image type doesn't support will be ignored.\n", "args": [ { - "name": "crop", - "description": "Crops the image according to the specified region.", - "type": { - "kind": "ENUM", - "name": "CropRegion", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "maxHeight", - "description": "Image height in pixels between 1 and 5760.", + "name": "maxWidth", + "description": "Image width in pixels between 1 and 5760.", "type": { "kind": "SCALAR", "name": "Int", @@ -16475,8 +14640,8 @@ "defaultValue": null }, { - "name": "maxWidth", - "description": "Image width in pixels between 1 and 5760.", + "name": "maxHeight", + "description": "Image height in pixels between 1 and 5760.", "type": { "kind": "SCALAR", "name": "Int", @@ -16485,11 +14650,11 @@ "defaultValue": null }, { - "name": "preferredContentType", - "description": "Best effort conversion of image into content type (SVG -> PNG, Anything -> JPG, Anything -> WEBP are supported).", + "name": "crop", + "description": "Crops the image according to the specified region.", "type": { "kind": "ENUM", - "name": "ImageContentType", + "name": "CropRegion", "ofType": null }, "defaultValue": null @@ -16503,6 +14668,16 @@ "ofType": null }, "defaultValue": "1" + }, + { + "name": "preferredContentType", + "description": "Best effort conversion of image into content type (SVG -> PNG, Anything -> JPG, Anything -> WEBP are supported).", + "type": { + "kind": "ENUM", + "name": "ImageContentType", + "ofType": null + }, + "defaultValue": null } ], "type": { @@ -16770,6 +14945,92 @@ "enumValues": null, "possibleTypes": null }, + { + "kind": "OBJECT", + "name": "InContextAnnotation", + "description": "Provide details about the contexts influenced by the @inContext directive on a field.", + "fields": [ + { + "name": "description", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "type", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "InContextAnnotationType", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "InContextAnnotationType", + "description": "This gives information about the type of context that impacts a field. For example, for a query with @inContext(language: \"EN\"), the type would point to the name: LanguageCode and kind: ENUM.", + "fields": [ + { + "name": "kind", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, { "kind": "SCALAR", "name": "Int", @@ -16852,7 +15113,7 @@ { "kind": "ENUM", "name": "LanguageCode", - "description": "ISO 639-1 language codes supported by Shopify.", + "description": "Language codes supported by Shopify.", "fields": null, "inputFields": null, "interfaces": null, @@ -17873,22 +16134,18 @@ "description": "Returns a metafield found by namespace and key.", "args": [ { - "name": "key", - "description": "The identifier for the metafield.", + "name": "namespace", + "description": "The container the metafield belongs to. If omitted, the app-reserved namespace will be used.", "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } + "kind": "SCALAR", + "name": "String", + "ofType": null }, "defaultValue": null }, { - "name": "namespace", - "description": "The container the metafield belongs to.", + "name": "key", + "description": "The identifier for the metafield.", "type": { "kind": "NON_NULL", "name": null, @@ -17915,7 +16172,7 @@ "args": [ { "name": "identifiers", - "description": "The list of metafields to retrieve by namespace and key.", + "description": "The list of metafields to retrieve by namespace and key.\n\nThe input must not contain more than `250` values.", "type": { "kind": "NON_NULL", "name": null, @@ -17940,28 +16197,324 @@ "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - } + "kind": "LIST", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Metafield", + "ofType": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": "The name of the location.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "HasMetafields", + "ofType": null + }, + { + "kind": "INTERFACE", + "name": "Node", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "LocationAddress", + "description": "Represents the address of a location.\n", + "fields": [ + { + "name": "address1", + "description": "The first line of the address for the location.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "address2", + "description": "The second line of the address for the location.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "city", + "description": "The city of the location.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "country", + "description": "The country of the location.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "countryCode", + "description": "The country code of the location.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "formatted", + "description": "A formatted version of the address for the location.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "latitude", + "description": "The latitude coordinates of the location.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "Float", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "longitude", + "description": "The longitude coordinates of the location.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "Float", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "phone", + "description": "The phone number of the location.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "province", + "description": "The province of the location.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "provinceCode", + "description": "The code for the province, state, or district of the address of the location.\n", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "zip", + "description": "The ZIP code of the location.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "LocationConnection", + "description": "An auto-generated type for paginating through multiple Locations.\n", + "fields": [ + { + "name": "edges", + "description": "A list of edges.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "LocationEdge", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "nodes", + "description": "A list of the nodes contained in LocationEdge.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Location", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "pageInfo", + "description": "Information to aid in pagination.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "PageInfo", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "LocationEdge", + "description": "An auto-generated type which holds one Location and a cursor during pagination.\n", + "fields": [ + { + "name": "cursor", + "description": "A cursor for use in pagination.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "name", - "description": "The name of the location.", + "name": "node", + "description": "The item at the end of LocationEdge.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "Location", "ofType": null } }, @@ -17970,29 +16523,53 @@ } ], "inputFields": null, - "interfaces": [ + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "LocationSortKeys", + "description": "The set of valid sort keys for the Location query.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ { - "kind": "INTERFACE", - "name": "HasMetafields", - "ofType": null + "name": "ID", + "description": "Sort by the `id` value.", + "isDeprecated": false, + "deprecationReason": null }, { - "kind": "INTERFACE", - "name": "Node", - "ofType": null + "name": "NAME", + "description": "Sort by the `name` value.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "CITY", + "description": "Sort by the `city` value.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "DISTANCE", + "description": "Sort by the `distance` value.", + "isDeprecated": false, + "deprecationReason": null } ], - "enumValues": null, "possibleTypes": null }, { "kind": "OBJECT", - "name": "LocationAddress", - "description": "Represents the address of a location.\n", + "name": "MailingAddress", + "description": "Represents a mailing address for customers and shipping.", "fields": [ { "name": "address1", - "description": "The first line of the address for the location.", + "description": "The first line of the address. Typically the street address or PO Box number.", "args": [], "type": { "kind": "SCALAR", @@ -18004,7 +16581,7 @@ }, { "name": "address2", - "description": "The second line of the address for the location.", + "description": "The second line of the address. Typically the number of the apartment, suite, or unit.\n", "args": [], "type": { "kind": "SCALAR", @@ -18016,7 +16593,19 @@ }, { "name": "city", - "description": "The city of the location.", + "description": "The name of the city, district, village, or town.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "company", + "description": "The name of the customer's company or organization.", "args": [], "type": { "kind": "SCALAR", @@ -18028,7 +16617,7 @@ }, { "name": "country", - "description": "The country of the location.", + "description": "The name of the country.", "args": [], "type": { "kind": "SCALAR", @@ -18040,20 +16629,65 @@ }, { "name": "countryCode", - "description": "The country code of the location.", + "description": "The two-letter code for the country of the address.\n\nFor example, US.\n", "args": [], "type": { "kind": "SCALAR", "name": "String", "ofType": null }, + "isDeprecated": true, + "deprecationReason": "Use `countryCodeV2` instead." + }, + { + "name": "countryCodeV2", + "description": "The two-letter code for the country of the address.\n\nFor example, US.\n", + "args": [], + "type": { + "kind": "ENUM", + "name": "CountryCode", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "formatted", - "description": "A formatted version of the address for the location.", + "name": "firstName", + "description": "The first name of the customer.", "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "formatted", + "description": "A formatted version of the address, customized by the provided arguments.", + "args": [ + { + "name": "withName", + "description": "Whether to include the customer's name in the formatted address.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false" + }, + { + "name": "withCompany", + "description": "Whether to include the customer's company in the formatted address.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "true" + } + ], "type": { "kind": "NON_NULL", "name": null, @@ -18074,9 +16708,49 @@ "isDeprecated": false, "deprecationReason": null }, + { + "name": "formattedArea", + "description": "A comma-separated list of the values for city, province, and country.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "id", + "description": "A globally-unique ID.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "lastName", + "description": "The last name of the customer.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, { "name": "latitude", - "description": "The latitude coordinates of the location.", + "description": "The latitude coordinate of the customer address.", "args": [], "type": { "kind": "SCALAR", @@ -18088,7 +16762,7 @@ }, { "name": "longitude", - "description": "The longitude coordinates of the location.", + "description": "The longitude coordinate of the customer address.", "args": [], "type": { "kind": "SCALAR", @@ -18098,9 +16772,21 @@ "isDeprecated": false, "deprecationReason": null }, + { + "name": "name", + "description": "The full name of the customer, based on firstName and lastName.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, { "name": "phone", - "description": "The phone number of the location.", + "description": "A unique phone number for the customer.\n\nFormatted using E.164 standard. For example, _+16135551111_.\n", "args": [], "type": { "kind": "SCALAR", @@ -18112,7 +16798,7 @@ }, { "name": "province", - "description": "The province of the location.", + "description": "The region of the address, such as the province, state, or district.", "args": [], "type": { "kind": "SCALAR", @@ -18124,7 +16810,7 @@ }, { "name": "provinceCode", - "description": "The code for the province, state, or district of the address of the location.\n", + "description": "The alphanumeric code for the region.\n\nFor example, ON.\n", "args": [], "type": { "kind": "SCALAR", @@ -18136,7 +16822,7 @@ }, { "name": "zip", - "description": "The ZIP code of the location.", + "description": "The zip or postal code of the address.", "args": [], "type": { "kind": "SCALAR", @@ -18148,14 +16834,20 @@ } ], "inputFields": null, - "interfaces": [], + "interfaces": [ + { + "kind": "INTERFACE", + "name": "Node", + "ofType": null + } + ], "enumValues": null, "possibleTypes": null }, { "kind": "OBJECT", - "name": "LocationConnection", - "description": "An auto-generated type for paginating through multiple Locations.\n", + "name": "MailingAddressConnection", + "description": "An auto-generated type for paginating through multiple MailingAddresses.\n", "fields": [ { "name": "edges", @@ -18172,7 +16864,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "LocationEdge", + "name": "MailingAddressEdge", "ofType": null } } @@ -18183,7 +16875,7 @@ }, { "name": "nodes", - "description": "A list of the nodes contained in LocationEdge.", + "description": "A list of the nodes contained in MailingAddressEdge.", "args": [], "type": { "kind": "NON_NULL", @@ -18196,7 +16888,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "Location", + "name": "MailingAddress", "ofType": null } } @@ -18229,8 +16921,8 @@ }, { "kind": "OBJECT", - "name": "LocationEdge", - "description": "An auto-generated type which holds one Location and a cursor during pagination.\n", + "name": "MailingAddressEdge", + "description": "An auto-generated type which holds one MailingAddress and a cursor during pagination.\n", "fields": [ { "name": "cursor", @@ -18250,14 +16942,14 @@ }, { "name": "node", - "description": "The item at the end of LocationEdge.", + "description": "The item at the end of MailingAddressEdge.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "OBJECT", - "name": "Location", + "name": "MailingAddress", "ofType": null } }, @@ -18271,60 +16963,140 @@ "possibleTypes": null }, { - "kind": "ENUM", - "name": "LocationSortKeys", - "description": "The set of valid sort keys for the Location query.", + "kind": "INPUT_OBJECT", + "name": "MailingAddressInput", + "description": "The input fields to create or update a mailing address.", "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ + "inputFields": [ { - "name": "ID", - "description": "Sort by the `id` value.", - "isDeprecated": false, - "deprecationReason": null + "name": "address1", + "description": "The first line of the address. Typically the street address or PO Box number.\n", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null }, { - "name": "CITY", - "description": "Sort by the `city` value.", - "isDeprecated": false, - "deprecationReason": null + "name": "address2", + "description": "The second line of the address. Typically the number of the apartment, suite, or unit.\n", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null }, { - "name": "DISTANCE", - "description": "Sort by the `distance` value.", - "isDeprecated": false, - "deprecationReason": null + "name": "city", + "description": "The name of the city, district, village, or town.\n", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null }, { - "name": "NAME", - "description": "Sort by the `name` value.", - "isDeprecated": false, - "deprecationReason": null + "name": "company", + "description": "The name of the customer's company or organization.\n", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "country", + "description": "The name of the country.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "firstName", + "description": "The first name of the customer.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "lastName", + "description": "The last name of the customer.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "phone", + "description": "A unique phone number for the customer.\n\nFormatted using E.164 standard. For example, _+16135551111_.\n", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "province", + "description": "The region of the address, such as the province, state, or district.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "zip", + "description": "The zip or postal code of the address.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null } ], + "interfaces": null, + "enumValues": null, "possibleTypes": null }, { "kind": "OBJECT", - "name": "MailingAddress", - "description": "Represents a mailing address for customers and shipping.", + "name": "ManualDiscountApplication", + "description": "Manual discount applications capture the intentions of a discount that was manually created.\n", "fields": [ { - "name": "address1", - "description": "The first line of the address. Typically the street address or PO Box number.", + "name": "allocationMethod", + "description": "The method by which the discount's value is allocated to its entitled items.", "args": [], "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "DiscountApplicationAllocationMethod", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "address2", - "description": "The second line of the address. Typically the number of the apartment, suite, or unit.\n", + "name": "description", + "description": "The description of the application.", "args": [], "type": { "kind": "SCALAR", @@ -18335,100 +17107,180 @@ "deprecationReason": null }, { - "name": "city", - "description": "The name of the city, district, village, or town.", + "name": "targetSelection", + "description": "Which lines of targetType that the discount is allocated over.", "args": [], "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "DiscountApplicationTargetSelection", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "company", - "description": "The name of the customer's company or organization.", + "name": "targetType", + "description": "The type of line that the discount is applicable towards.", "args": [], "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "DiscountApplicationTargetType", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "country", - "description": "The name of the country.", + "name": "title", + "description": "The title of the application.", "args": [], "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "countryCode", - "description": "The two-letter code for the country of the address.\n\nFor example, US.\n", + "name": "value", + "description": "The value of the discount application.", "args": [], "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "UNION", + "name": "PricingValue", + "ofType": null + } }, - "isDeprecated": true, - "deprecationReason": "Use `countryCodeV2` instead." - }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ { - "name": "countryCodeV2", - "description": "The two-letter code for the country of the address.\n\nFor example, US.\n", + "kind": "INTERFACE", + "name": "DiscountApplication", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "Market", + "description": "A group of one or more regions of the world that a merchant is targeting for sales. To learn more about markets, refer to [the Shopify Markets conceptual overview](/docs/apps/markets).", + "fields": [ + { + "name": "handle", + "description": "A human-readable unique string for the market automatically generated from its title.\n", "args": [], "type": { - "kind": "ENUM", - "name": "CountryCode", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "firstName", - "description": "The first name of the customer.", + "name": "id", + "description": "A globally-unique ID.", "args": [], "type": { - "kind": "SCALAR", - "name": "String", + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "metafield", + "description": "Returns a metafield found by namespace and key.", + "args": [ + { + "name": "namespace", + "description": "The container the metafield belongs to. If omitted, the app-reserved namespace will be used.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "key", + "description": "The identifier for the metafield.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "Metafield", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "formatted", - "description": "A formatted version of the address, customized by the provided arguments.", + "name": "metafields", + "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.", "args": [ { - "name": "withCompany", - "description": "Whether to include the customer's company in the formatted address.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "true" - }, - { - "name": "withName", - "description": "Whether to include the customer's name in the formatted address.", + "name": "identifiers", + "description": "The list of metafields to retrieve by namespace and key.\n\nThe input must not contain more than `250` values.", "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "HasMetafieldsIdentifier", + "ofType": null + } + } + } }, - "defaultValue": "false" + "defaultValue": null } ], "type": { @@ -18438,22 +17290,40 @@ "kind": "LIST", "name": null, "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } + "kind": "OBJECT", + "name": "Metafield", + "ofType": null } } }, "isDeprecated": false, "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "HasMetafields", + "ofType": null }, { - "name": "formattedArea", - "description": "A comma-separated list of the values for city, province, and country.", + "kind": "INTERFACE", + "name": "Node", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INTERFACE", + "name": "Media", + "description": "Represents a media interface.", + "fields": [ + { + "name": "alt", + "description": "A word or phrase to share the nature or contents of a media.", "args": [], "type": { "kind": "SCALAR", @@ -18480,117 +17350,76 @@ "deprecationReason": null }, { - "name": "lastName", - "description": "The last name of the customer.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "latitude", - "description": "The latitude coordinate of the customer address.", + "name": "mediaContentType", + "description": "The media content type.", "args": [], "type": { - "kind": "SCALAR", - "name": "Float", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "MediaContentType", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "longitude", - "description": "The longitude coordinate of the customer address.", + "name": "presentation", + "description": "The presentation for a media.", "args": [], "type": { - "kind": "SCALAR", - "name": "Float", + "kind": "OBJECT", + "name": "MediaPresentation", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "name", - "description": "The full name of the customer, based on firstName and lastName.", + "name": "previewImage", + "description": "The preview image for the media.", "args": [], "type": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "Image", "ofType": null }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": [ { - "name": "phone", - "description": "A unique phone number for the customer.\n\nFormatted using E.164 standard. For example, _+16135551111_.\n", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null + "kind": "OBJECT", + "name": "ExternalVideo", + "ofType": null }, { - "name": "province", - "description": "The region of the address, such as the province, state, or district.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null + "kind": "OBJECT", + "name": "MediaImage", + "ofType": null }, { - "name": "provinceCode", - "description": "The two-letter code for the region.\n\nFor example, ON.\n", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null + "kind": "OBJECT", + "name": "Model3d", + "ofType": null }, { - "name": "zip", - "description": "The zip or postal code of the address.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Node", + "kind": "OBJECT", + "name": "Video", "ofType": null } - ], - "enumValues": null, - "possibleTypes": null + ] }, { "kind": "OBJECT", - "name": "MailingAddressConnection", - "description": "An auto-generated type for paginating through multiple MailingAddresses.\n", + "name": "MediaConnection", + "description": "An auto-generated type for paginating through multiple Media.\n", "fields": [ { "name": "edges", @@ -18607,7 +17436,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "MailingAddressEdge", + "name": "MediaEdge", "ofType": null } } @@ -18618,7 +17447,7 @@ }, { "name": "nodes", - "description": "A list of the nodes contained in MailingAddressEdge.", + "description": "A list of the nodes contained in MediaEdge.", "args": [], "type": { "kind": "NON_NULL", @@ -18630,8 +17459,8 @@ "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "MailingAddress", + "kind": "INTERFACE", + "name": "Media", "ofType": null } } @@ -18662,10 +17491,45 @@ "enumValues": null, "possibleTypes": null }, + { + "kind": "ENUM", + "name": "MediaContentType", + "description": "The possible content types for a media object.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "EXTERNAL_VIDEO", + "description": "An externally hosted video.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "IMAGE", + "description": "A Shopify hosted image.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "MODEL_3D", + "description": "A 3d model.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "VIDEO", + "description": "A Shopify hosted video.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, { "kind": "OBJECT", - "name": "MailingAddressEdge", - "description": "An auto-generated type which holds one MailingAddress and a cursor during pagination.\n", + "name": "MediaEdge", + "description": "An auto-generated type which holds one Media and a cursor during pagination.\n", "fields": [ { "name": "cursor", @@ -18685,14 +17549,14 @@ }, { "name": "node", - "description": "The item at the end of MailingAddressEdge.", + "description": "The item at the end of MediaEdge.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "MailingAddress", + "kind": "INTERFACE", + "name": "Media", "ofType": null } }, @@ -18706,159 +17570,244 @@ "possibleTypes": null }, { - "kind": "INPUT_OBJECT", - "name": "MailingAddressInput", - "description": "The input fields to create or update a mailing address.", + "kind": "ENUM", + "name": "MediaHost", + "description": "Host for a Media Resource.", "fields": null, - "inputFields": [ + "inputFields": null, + "interfaces": null, + "enumValues": [ { - "name": "address1", - "description": "The first line of the address. Typically the street address or PO Box number.\n", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null + "name": "YOUTUBE", + "description": "Host for YouTube embedded videos.", + "isDeprecated": false, + "deprecationReason": null }, { - "name": "address2", - "description": "The second line of the address. Typically the number of the apartment, suite, or unit.\n", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, + "name": "VIMEO", + "description": "Host for Vimeo embedded videos.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "MediaImage", + "description": "Represents a Shopify hosted image.", + "fields": [ { - "name": "city", - "description": "The name of the city, district, village, or town.\n", + "name": "alt", + "description": "A word or phrase to share the nature or contents of a media.", + "args": [], "type": { "kind": "SCALAR", "name": "String", "ofType": null }, - "defaultValue": null + "isDeprecated": false, + "deprecationReason": null }, { - "name": "company", - "description": "The name of the customer's company or organization.\n", + "name": "id", + "description": "A globally-unique ID.", + "args": [], "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } }, - "defaultValue": null + "isDeprecated": false, + "deprecationReason": null }, { - "name": "country", - "description": "The name of the country.", + "name": "image", + "description": "The image for the media.", + "args": [], "type": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "Image", "ofType": null }, - "defaultValue": null + "isDeprecated": false, + "deprecationReason": null }, { - "name": "firstName", - "description": "The first name of the customer.", + "name": "mediaContentType", + "description": "The media content type.", + "args": [], "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "MediaContentType", + "ofType": null + } }, - "defaultValue": null + "isDeprecated": false, + "deprecationReason": null }, { - "name": "lastName", - "description": "The last name of the customer.", + "name": "presentation", + "description": "The presentation for a media.", + "args": [], "type": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "MediaPresentation", "ofType": null }, - "defaultValue": null + "isDeprecated": false, + "deprecationReason": null }, { - "name": "phone", - "description": "A unique phone number for the customer.\n\nFormatted using E.164 standard. For example, _+16135551111_.\n", + "name": "previewImage", + "description": "The preview image for the media.", + "args": [], "type": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "Image", "ofType": null }, - "defaultValue": null - }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ { - "name": "province", - "description": "The region of the address, such as the province, state, or district.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null + "kind": "INTERFACE", + "name": "Media", + "ofType": null }, { - "name": "zip", - "description": "The zip or postal code of the address.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null + "kind": "INTERFACE", + "name": "Node", + "ofType": null } ], - "interfaces": null, "enumValues": null, "possibleTypes": null }, { "kind": "OBJECT", - "name": "ManualDiscountApplication", - "description": "Manual discount applications capture the intentions of a discount that was manually created.\n", + "name": "MediaPresentation", + "description": "A media presentation.", "fields": [ { - "name": "allocationMethod", - "description": "The method by which the discount's value is allocated to its entitled items.", + "name": "asJson", + "description": "A JSON object representing a presentation view.", + "args": [ + { + "name": "format", + "description": "The format to transform the settings.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "MediaPresentationFormat", + "ofType": null + } + }, + "defaultValue": null + } + ], + "type": { + "kind": "SCALAR", + "name": "JSON", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "id", + "description": "A globally-unique ID.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "ENUM", - "name": "DiscountApplicationAllocationMethod", + "kind": "SCALAR", + "name": "ID", "ofType": null } }, "isDeprecated": false, "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "Node", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "MediaPresentationFormat", + "description": "The possible formats for a media presentation.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "MODEL_VIEWER", + "description": "A model viewer presentation.", + "isDeprecated": false, + "deprecationReason": null }, { - "name": "description", - "description": "The description of the application.", + "name": "IMAGE", + "description": "A media image presentation.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "Menu", + "description": "A [navigation menu](https://help.shopify.com/manual/online-store/menus-and-links) representing a hierarchy\nof hyperlinks (items).\n", + "fields": [ + { + "name": "handle", + "description": "The menu's handle.", "args": [], "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "targetSelection", - "description": "Which lines of targetType that the discount is allocated over.", + "name": "id", + "description": "A globally-unique ID.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "ENUM", - "name": "DiscountApplicationTargetSelection", + "kind": "SCALAR", + "name": "ID", "ofType": null } }, @@ -18866,31 +17815,39 @@ "deprecationReason": null }, { - "name": "targetType", - "description": "The type of line that the discount is applicable towards.", + "name": "items", + "description": "The menu's child items.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "ENUM", - "name": "DiscountApplicationTargetType", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "MenuItem", + "ofType": null + } + } } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "title", - "description": "The title of the application.", + "name": "itemsCount", + "description": "The count of items on the menu.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "String", + "name": "Int", "ofType": null } }, @@ -18898,15 +17855,15 @@ "deprecationReason": null }, { - "name": "value", - "description": "The value of the discount application.", + "name": "title", + "description": "The menu's title.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "UNION", - "name": "PricingValue", + "kind": "SCALAR", + "name": "String", "ofType": null } }, @@ -18918,7 +17875,7 @@ "interfaces": [ { "kind": "INTERFACE", - "name": "DiscountApplication", + "name": "Node", "ofType": null } ], @@ -18927,19 +17884,19 @@ }, { "kind": "OBJECT", - "name": "Market", - "description": "A group of one or more regions of the world that a merchant is targeting for sales. To learn more about markets, refer to [the Shopify Markets conceptual overview](/docs/apps/markets).", + "name": "MenuItem", + "description": "A menu item within a parent menu.", "fields": [ { - "name": "handle", - "description": "A human-readable unique string for the market automatically generated from its title.\n", + "name": "id", + "description": "A globally-unique ID.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "String", + "name": "ID", "ofType": null } }, @@ -18947,165 +17904,87 @@ "deprecationReason": null }, { - "name": "id", - "description": "A globally-unique ID.", + "name": "items", + "description": "The menu item's child items.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metafield", - "description": "Returns a metafield found by namespace and key.", - "args": [ - { - "name": "key", - "description": "The identifier for the metafield.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "namespace", - "description": "The container the metafield belongs to.", - "type": { + "kind": "LIST", + "name": null, + "ofType": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "MenuItem", "ofType": null } - }, - "defaultValue": null + } } - ], - "type": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "metafields", - "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.", - "args": [ - { - "name": "identifiers", - "description": "The list of metafields to retrieve by namespace and key.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "HasMetafieldsIdentifier", - "ofType": null - } - } - } - }, - "defaultValue": null - } - ], + "name": "resource", + "description": "The linked resource.", + "args": [], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - } - } + "kind": "UNION", + "name": "MenuItemResource", + "ofType": null }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "HasMetafields", - "ofType": null }, { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INTERFACE", - "name": "Media", - "description": "Represents a media interface.", - "fields": [ - { - "name": "alt", - "description": "A word or phrase to share the nature or contents of a media.", + "name": "resourceId", + "description": "The ID of the linked resource.", "args": [], "type": { "kind": "SCALAR", - "name": "String", + "name": "ID", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "id", - "description": "A globally-unique ID.", + "name": "tags", + "description": "The menu item's tags to filter a collection.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "mediaContentType", - "description": "The media content type.", + "name": "title", + "description": "The menu item's title.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "ENUM", - "name": "MediaContentType", + "kind": "SCALAR", + "name": "String", "ofType": null } }, @@ -19113,24 +17992,28 @@ "deprecationReason": null }, { - "name": "presentation", - "description": "The presentation for a media.", + "name": "type", + "description": "The menu item's type.", "args": [], "type": { - "kind": "OBJECT", - "name": "MediaPresentation", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "MenuItemType", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "previewImage", - "description": "The preview image for the media.", + "name": "url", + "description": "The menu item's URL.", "args": [], "type": { - "kind": "OBJECT", - "name": "Image", + "kind": "SCALAR", + "name": "URL", "ofType": null }, "isDeprecated": false, @@ -19138,156 +18021,349 @@ } ], "inputFields": null, - "interfaces": [], + "interfaces": [ + { + "kind": "INTERFACE", + "name": "Node", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "UNION", + "name": "MenuItemResource", + "description": "The list of possible resources a `MenuItem` can reference.\n", + "fields": null, + "inputFields": null, + "interfaces": null, "enumValues": null, "possibleTypes": [ { "kind": "OBJECT", - "name": "ExternalVideo", + "name": "Article", "ofType": null }, { "kind": "OBJECT", - "name": "MediaImage", + "name": "Blog", "ofType": null }, { "kind": "OBJECT", - "name": "Model3d", + "name": "Collection", "ofType": null }, { "kind": "OBJECT", - "name": "Video", + "name": "Metaobject", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Page", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Product", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "ShopPolicy", + "ofType": null + } + ] + }, + { + "kind": "ENUM", + "name": "MenuItemType", + "description": "A menu item type.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "FRONTPAGE", + "description": "A frontpage link.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "COLLECTION", + "description": "A collection link.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "COLLECTIONS", + "description": "A collection link.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "PRODUCT", + "description": "A product link.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "CATALOG", + "description": "A catalog link.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "PAGE", + "description": "A page link.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "BLOG", + "description": "A blog link.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ARTICLE", + "description": "An article link.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "SEARCH", + "description": "A search link.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "SHOP_POLICY", + "description": "A shop policy link.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "HTTP", + "description": "An http link.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "METAOBJECT", + "description": "A metaobject page link.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "UNION", + "name": "Merchandise", + "description": "The merchandise to be purchased at checkout.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": [ + { + "kind": "OBJECT", + "name": "ProductVariant", "ofType": null } ] }, { "kind": "OBJECT", - "name": "MediaConnection", - "description": "An auto-generated type for paginating through multiple Media.\n", + "name": "Metafield", + "description": "Metafields represent custom metadata attached to a resource. Metafields can be sorted into namespaces and are\ncomprised of keys, values, and value types.\n", "fields": [ { - "name": "edges", - "description": "A list of edges.", + "name": "createdAt", + "description": "The date and time when the storefront metafield was created.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MediaEdge", - "ofType": null - } - } + "kind": "SCALAR", + "name": "DateTime", + "ofType": null } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "nodes", - "description": "A list of the nodes contained in MediaEdge.", + "name": "description", + "description": "The description of a metafield.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "id", + "description": "A globally-unique ID.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INTERFACE", - "name": "Media", - "ofType": null - } - } + "kind": "SCALAR", + "name": "ID", + "ofType": null } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "pageInfo", - "description": "Information to aid in pagination.", + "name": "key", + "description": "The unique identifier for the metafield within its namespace.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "PageInfo", + "kind": "SCALAR", + "name": "String", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "MediaContentType", - "description": "The possible content types for a media object.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ + }, { - "name": "EXTERNAL_VIDEO", - "description": "An externally hosted video.", + "name": "namespace", + "description": "The container for a group of metafields that the metafield is associated with.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "IMAGE", - "description": "A Shopify hosted image.", + "name": "parentResource", + "description": "The type of resource that the metafield is attached to.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "UNION", + "name": "MetafieldParentResource", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "MODEL_3D", - "description": "A 3d model.", + "name": "reference", + "description": "Returns a reference object if the metafield's type is a resource reference.", + "args": [], + "type": { + "kind": "UNION", + "name": "MetafieldReference", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "references", + "description": "A list of reference objects if the metafield's type is a resource reference list.", + "args": [ + { + "name": "first", + "description": "Returns up to the first `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "after", + "description": "Returns the elements that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "last", + "description": "Returns up to the last `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "before", + "description": "Returns the elements that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "MetafieldReferenceConnection", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "type", + "description": "The type name of the metafield.\nRefer to the list of [supported types](https://shopify.dev/apps/metafields/definitions/types).\n", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "VIDEO", - "description": "A Shopify hosted video.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "MediaEdge", - "description": "An auto-generated type which holds one Media and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", + "name": "updatedAt", + "description": "The date and time when the metafield was last updated.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "String", + "name": "DateTime", "ofType": null } }, @@ -19295,15 +18371,15 @@ "deprecationReason": null }, { - "name": "node", - "description": "The item at the end of MediaEdge.", + "name": "value", + "description": "The data stored in the metafield. Always stored as a string, regardless of the metafield's type.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "INTERFACE", - "name": "Media", + "kind": "SCALAR", + "name": "String", "ofType": null } }, @@ -19312,27 +18388,33 @@ } ], "inputFields": null, - "interfaces": [], + "interfaces": [ + { + "kind": "INTERFACE", + "name": "Node", + "ofType": null + } + ], "enumValues": null, "possibleTypes": null }, { "kind": "ENUM", - "name": "MediaHost", - "description": "Host for a Media Resource.", + "name": "MetafieldDeleteErrorCode", + "description": "Possible error codes that can be returned by `MetafieldDeleteUserError`.", "fields": null, "inputFields": null, "interfaces": null, "enumValues": [ { - "name": "YOUTUBE", - "description": "Host for YouTube embedded videos.", + "name": "INVALID_OWNER", + "description": "The owner ID is invalid.", "isDeprecated": false, "deprecationReason": null }, { - "name": "VIMEO", - "description": "Host for Vimeo embedded videos.", + "name": "METAFIELD_DOES_NOT_EXIST", + "description": "Metafield not found.", "isDeprecated": false, "deprecationReason": null } @@ -19341,100 +18423,63 @@ }, { "kind": "OBJECT", - "name": "MediaImage", - "description": "Represents a Shopify hosted image.", + "name": "MetafieldDeleteUserError", + "description": "An error that occurs during the execution of cart metafield deletion.", "fields": [ { - "name": "alt", - "description": "A word or phrase to share the nature or contents of a media.", + "name": "code", + "description": "The error code.", "args": [], "type": { - "kind": "SCALAR", - "name": "String", + "kind": "ENUM", + "name": "MetafieldDeleteErrorCode", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "id", - "description": "A globally-unique ID.", + "name": "field", + "description": "The path to the input field that caused the error.", "args": [], "type": { - "kind": "NON_NULL", + "kind": "LIST", "name": null, "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "image", - "description": "The image for the media.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Image", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "mediaContentType", - "description": "The media content type.", + "name": "message", + "description": "The error message.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "ENUM", - "name": "MediaContentType", + "kind": "SCALAR", + "name": "String", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - }, - { - "name": "presentation", - "description": "The presentation for a media.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MediaPresentation", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "previewImage", - "description": "The preview image for the media.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Image", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null } ], "inputFields": null, "interfaces": [ { "kind": "INTERFACE", - "name": "Media", - "ofType": null - }, - { - "kind": "INTERFACE", - "name": "Node", + "name": "DisplayableError", "ofType": null } ], @@ -19442,128 +18487,208 @@ "possibleTypes": null }, { - "kind": "OBJECT", - "name": "MediaPresentation", - "description": "A media presentation.", - "fields": [ + "kind": "INPUT_OBJECT", + "name": "MetafieldFilter", + "description": "A filter used to view a subset of products in a collection matching a specific metafield value.\n\nOnly the following metafield types are currently supported:\n- `number_integer`\n- `number_decimal`\n- `single_line_text_field`\n- `boolean` as of 2022-04.\n", + "fields": null, + "inputFields": [ { - "name": "asJson", - "description": "A JSON object representing a presentation view.", - "args": [ - { - "name": "format", - "description": "The format to transform the settings.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "MediaPresentationFormat", - "ofType": null - } - }, - "defaultValue": null - } - ], + "name": "namespace", + "description": "The namespace of the metafield to filter on.", "type": { - "kind": "SCALAR", - "name": "JSON", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } }, - "isDeprecated": false, - "deprecationReason": null + "defaultValue": null }, { - "name": "id", - "description": "A globally-unique ID.", - "args": [], + "name": "key", + "description": "The key of the metafield to filter on.", "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "ID", + "name": "String", "ofType": null } }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ + "defaultValue": null + }, { - "kind": "INTERFACE", - "name": "Node", - "ofType": null + "name": "value", + "description": "The value of the metafield.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null } ], + "interfaces": null, "enumValues": null, "possibleTypes": null }, { - "kind": "ENUM", - "name": "MediaPresentationFormat", - "description": "The possible formats for a media presentation.", + "kind": "UNION", + "name": "MetafieldParentResource", + "description": "A resource that the metafield belongs to.", "fields": null, "inputFields": null, "interfaces": null, - "enumValues": [ + "enumValues": null, + "possibleTypes": [ { - "name": "MODEL_VIEWER", - "description": "A model viewer presentation.", - "isDeprecated": false, - "deprecationReason": null + "kind": "OBJECT", + "name": "Article", + "ofType": null }, { - "name": "IMAGE", - "description": "A media image presentation.", - "isDeprecated": false, - "deprecationReason": null + "kind": "OBJECT", + "name": "Blog", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Cart", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Collection", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Company", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "CompanyLocation", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Customer", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Location", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Market", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Order", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Page", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Product", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "ProductVariant", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "SellingPlan", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Shop", + "ofType": null } - ], - "possibleTypes": null + ] }, { - "kind": "OBJECT", - "name": "Menu", - "description": "A [navigation menu](https://help.shopify.com/manual/online-store/menus-and-links) representing a hierarchy\nof hyperlinks (items).\n", - "fields": [ + "kind": "UNION", + "name": "MetafieldReference", + "description": "Returns the resource which is being referred to by a metafield.\n", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": [ { - "name": "handle", - "description": "The menu's handle.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null + "kind": "OBJECT", + "name": "Collection", + "ofType": null }, { - "name": "id", - "description": "A globally-unique ID.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null + "kind": "OBJECT", + "name": "GenericFile", + "ofType": null }, { - "name": "items", - "description": "The menu's child items.", + "kind": "OBJECT", + "name": "MediaImage", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Metaobject", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Model3d", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Page", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Product", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "ProductVariant", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Video", + "ofType": null + } + ] + }, + { + "kind": "OBJECT", + "name": "MetafieldReferenceConnection", + "description": "An auto-generated type for paginating through multiple MetafieldReferences.\n", + "fields": [ + { + "name": "edges", + "description": "A list of edges.", "args": [], "type": { "kind": "NON_NULL", @@ -19576,7 +18701,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "MenuItem", + "name": "MetafieldReferenceEdge", "ofType": null } } @@ -19586,31 +18711,39 @@ "deprecationReason": null }, { - "name": "itemsCount", - "description": "The count of items on the menu.", + "name": "nodes", + "description": "A list of the nodes contained in MetafieldReferenceEdge.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "Int", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "UNION", + "name": "MetafieldReference", + "ofType": null + } + } } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "title", - "description": "The menu's title.", + "name": "pageInfo", + "description": "Information to aid in pagination.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "PageInfo", "ofType": null } }, @@ -19619,31 +18752,25 @@ } ], "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], + "interfaces": [], "enumValues": null, "possibleTypes": null }, { "kind": "OBJECT", - "name": "MenuItem", - "description": "A menu item within a parent menu.", + "name": "MetafieldReferenceEdge", + "description": "An auto-generated type which holds one MetafieldReference and a cursor during pagination.\n", "fields": [ { - "name": "id", - "description": "A globally-unique ID.", + "name": "cursor", + "description": "A cursor for use in pagination.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "ID", + "name": "String", "ofType": null } }, @@ -19651,127 +18778,98 @@ "deprecationReason": null }, { - "name": "items", - "description": "The menu item's child items.", + "name": "node", + "description": "The item at the end of MetafieldReferenceEdge.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MenuItem", - "ofType": null - } - } + "kind": "UNION", + "name": "MetafieldReference", + "ofType": null } }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "MetafieldsSetUserError", + "description": "An error that occurs during the execution of `MetafieldsSet`.", + "fields": [ { - "name": "resource", - "description": "The linked resource.", + "name": "code", + "description": "The error code.", "args": [], "type": { - "kind": "UNION", - "name": "MenuItemResource", + "kind": "ENUM", + "name": "MetafieldsSetUserErrorCode", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "resourceId", - "description": "The ID of the linked resource.", + "name": "elementIndex", + "description": "The index of the array element that's causing the error.", "args": [], "type": { "kind": "SCALAR", - "name": "ID", + "name": "Int", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "tags", - "description": "The menu item's tags to filter a collection.", + "name": "field", + "description": "The path to the input field that caused the error.", "args": [], "type": { - "kind": "NON_NULL", + "kind": "LIST", "name": null, "ofType": { - "kind": "LIST", + "kind": "NON_NULL", "name": null, "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "title", - "description": "The menu item's title.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "SCALAR", + "name": "String", + "ofType": null + } } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "type", - "description": "The menu item's type.", + "name": "message", + "description": "The error message.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "ENUM", - "name": "MenuItemType", + "kind": "SCALAR", + "name": "String", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - }, - { - "name": "url", - "description": "The menu item's URL.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null } ], "inputFields": null, "interfaces": [ { "kind": "INTERFACE", - "name": "Node", + "name": "DisplayableError", "ofType": null } ], @@ -19779,191 +18877,314 @@ "possibleTypes": null }, { - "kind": "UNION", - "name": "MenuItemResource", - "description": "The list of possible resources a `MenuItem` can reference.\n", + "kind": "ENUM", + "name": "MetafieldsSetUserErrorCode", + "description": "Possible error codes that can be returned by `MetafieldsSetUserError`.", "fields": null, "inputFields": null, "interfaces": null, - "enumValues": null, - "possibleTypes": [ + "enumValues": [ { - "kind": "OBJECT", - "name": "Article", - "ofType": null + "name": "BLANK", + "description": "The input value is blank.", + "isDeprecated": false, + "deprecationReason": null }, { - "kind": "OBJECT", - "name": "Blog", - "ofType": null + "name": "INCLUSION", + "description": "The input value isn't included in the list.", + "isDeprecated": false, + "deprecationReason": null }, { - "kind": "OBJECT", - "name": "Collection", - "ofType": null + "name": "LESS_THAN_OR_EQUAL_TO", + "description": "The input value should be less than or equal to the maximum value allowed.", + "isDeprecated": false, + "deprecationReason": null }, { - "kind": "OBJECT", - "name": "Page", - "ofType": null + "name": "PRESENT", + "description": "The input value needs to be blank.", + "isDeprecated": false, + "deprecationReason": null }, { - "kind": "OBJECT", - "name": "Product", - "ofType": null + "name": "TOO_SHORT", + "description": "The input value is too short.", + "isDeprecated": false, + "deprecationReason": null }, { - "kind": "OBJECT", - "name": "ShopPolicy", - "ofType": null - } - ] - }, - { - "kind": "ENUM", - "name": "MenuItemType", - "description": "A menu item type.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "FRONTPAGE", - "description": "A frontpage link.", + "name": "TOO_LONG", + "description": "The input value is too long.", "isDeprecated": false, "deprecationReason": null }, { - "name": "COLLECTION", - "description": "A collection link.", + "name": "INVALID_OWNER", + "description": "The owner ID is invalid.", "isDeprecated": false, "deprecationReason": null }, { - "name": "COLLECTIONS", - "description": "A collection link.", + "name": "INVALID_VALUE", + "description": "The value is invalid for metafield type or for definition options.", "isDeprecated": false, "deprecationReason": null }, { - "name": "PRODUCT", - "description": "A product link.", + "name": "INVALID_TYPE", + "description": "The type is invalid.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "Metaobject", + "description": "An instance of a user-defined model based on a MetaobjectDefinition.", + "fields": [ + { + "name": "field", + "description": "Accesses a field of the object by key.", + "args": [ + { + "name": "key", + "description": "The key of the field.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "MetaobjectField", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "CATALOG", - "description": "A catalog link.", + "name": "fields", + "description": "All object fields with defined values.\nOmitted object keys can be assumed null, and no guarantees are made about field order.\n", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "MetaobjectField", + "ofType": null + } + } + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "PAGE", - "description": "A page link.", + "name": "handle", + "description": "The unique handle of the metaobject. Useful as a custom ID.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "BLOG", - "description": "A blog link.", + "name": "id", + "description": "A globally-unique ID.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "ARTICLE", - "description": "An article link.", + "name": "onlineStoreUrl", + "description": "The URL used for viewing the metaobject on the shop's Online Store. Returns `null` if the metaobject definition doesn't have the `online_store` capability.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "URL", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "SEARCH", - "description": "A search link.", + "name": "seo", + "description": "The metaobject's SEO information. Returns `null` if the metaobject definition\ndoesn't have the `renderable` capability.\n", + "args": [], + "type": { + "kind": "OBJECT", + "name": "MetaobjectSEO", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "SHOP_POLICY", - "description": "A shop policy link.", + "name": "type", + "description": "The type of the metaobject. Defines the namespace of its associated metafields.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "HTTP", - "description": "An http link.", + "name": "updatedAt", + "description": "The date and time when the metaobject was last updated.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "DateTime", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null } ], - "possibleTypes": null - }, - { - "kind": "UNION", - "name": "Merchandise", - "description": "The merchandise to be purchased at checkout.", - "fields": null, "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": [ + "interfaces": [ { - "kind": "OBJECT", - "name": "ProductVariant", + "kind": "INTERFACE", + "name": "Node", + "ofType": null + }, + { + "kind": "INTERFACE", + "name": "OnlineStorePublishable", "ofType": null } - ] + ], + "enumValues": null, + "possibleTypes": null }, { "kind": "OBJECT", - "name": "Metafield", - "description": "Metafields represent custom metadata attached to a resource. Metafields can be sorted into namespaces and are\ncomprised of keys, values, and value types.\n", + "name": "MetaobjectConnection", + "description": "An auto-generated type for paginating through multiple Metaobjects.\n", "fields": [ { - "name": "createdAt", - "description": "The date and time when the storefront metafield was created.", + "name": "edges", + "description": "A list of edges.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "MetaobjectEdge", + "ofType": null + } + } } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "description", - "description": "The description of a metafield.", + "name": "nodes", + "description": "A list of the nodes contained in MetaobjectEdge.", "args": [], "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Metaobject", + "ofType": null + } + } + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "id", - "description": "A globally-unique ID.", + "name": "pageInfo", + "description": "Information to aid in pagination.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "ID", + "kind": "OBJECT", + "name": "PageInfo", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "MetaobjectEdge", + "description": "An auto-generated type which holds one Metaobject and a cursor during pagination.\n", + "fields": [ { - "name": "key", - "description": "The unique identifier for the metafield within its namespace.", + "name": "cursor", + "description": "A cursor for use in pagination.", "args": [], "type": { "kind": "NON_NULL", @@ -19978,31 +19199,42 @@ "deprecationReason": null }, { - "name": "namespace", - "description": "The container for a group of metafields that the metafield is associated with.", + "name": "node", + "description": "The item at the end of MetaobjectEdge.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "Metaobject", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "MetaobjectField", + "description": "Provides the value of a Metaobject field.", + "fields": [ { - "name": "parentResource", - "description": "The type of resource that the metafield is attached to.", + "name": "key", + "description": "The field key.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "UNION", - "name": "MetafieldParentResource", + "kind": "SCALAR", + "name": "String", "ofType": null } }, @@ -20011,7 +19243,7 @@ }, { "name": "reference", - "description": "Returns a reference object if the metafield's type is a resource reference.", + "description": "A referenced object if the field type is a resource reference.", "args": [], "type": { "kind": "UNION", @@ -20023,7 +19255,7 @@ }, { "name": "references", - "description": "A list of reference objects if the metafield's type is a resource reference list.", + "description": "A list of referenced objects if the field type is a resource reference list.", "args": [ { "name": "first", @@ -20076,7 +19308,7 @@ }, { "name": "type", - "description": "The type name of the metafield.\nRefer to the list of [supported types](https://shopify.dev/apps/metafields/definitions/types).\n", + "description": "The type name of the field.\nSee the list of [supported types](https://shopify.dev/apps/metafields/definitions/types).\n", "args": [], "type": { "kind": "NON_NULL", @@ -20091,15 +19323,140 @@ "deprecationReason": null }, { - "name": "updatedAt", - "description": "The date and time when the metafield was last updated.", + "name": "value", + "description": "The field value.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "MetaobjectHandleInput", + "description": "The input fields used to retrieve a metaobject by handle.", + "fields": null, + "inputFields": [ + { + "name": "handle", + "description": "The handle of the metaobject.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "type", + "description": "The type of the metaobject.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "MetaobjectSEO", + "description": "SEO information for a metaobject.", + "fields": [ + { + "name": "description", + "description": "The meta description.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "MetaobjectField", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "title", + "description": "The SEO title.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "MetaobjectField", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "Model3d", + "description": "Represents a Shopify hosted 3D model.", + "fields": [ + { + "name": "alt", + "description": "A word or phrase to share the nature or contents of a media.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "id", + "description": "A globally-unique ID.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "DateTime", + "name": "ID", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "mediaContentType", + "description": "The media content type.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "MediaContentType", "ofType": null } }, @@ -20107,16 +19464,48 @@ "deprecationReason": null }, { - "name": "value", - "description": "The data stored in the metafield. Always stored as a string, regardless of the metafield's type.", + "name": "presentation", + "description": "The presentation for a media.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "MediaPresentation", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "previewImage", + "description": "The preview image for the media.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "Image", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "sources", + "description": "The sources for a 3d model.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Model3dSource", + "ofType": null + } + } } }, "isDeprecated": false, @@ -20125,6 +19514,11 @@ ], "inputFields": null, "interfaces": [ + { + "kind": "INTERFACE", + "name": "Media", + "ofType": null + }, { "kind": "INTERFACE", "name": "Node", @@ -20135,68 +19529,61 @@ "possibleTypes": null }, { - "kind": "ENUM", - "name": "MetafieldDeleteErrorCode", - "description": "Possible error codes that can be returned by `MetafieldDeleteUserError`.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ + "kind": "OBJECT", + "name": "Model3dSource", + "description": "Represents a source for a Shopify hosted 3d model.", + "fields": [ { - "name": "INVALID_OWNER", - "description": "The owner ID is invalid.", + "name": "filesize", + "description": "The filesize of the 3d model.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "METAFIELD_DOES_NOT_EXIST", - "description": "Metafield not found.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "MetafieldDeleteUserError", - "description": "An error that occurs during the execution of cart metafield deletion.", - "fields": [ - { - "name": "code", - "description": "The error code.", + "name": "format", + "description": "The format of the 3d model.", "args": [], "type": { - "kind": "ENUM", - "name": "MetafieldDeleteErrorCode", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "field", - "description": "The path to the input field that caused the error.", + "name": "mimeType", + "description": "The MIME type of the 3d model.", "args": [], "type": { - "kind": "LIST", + "kind": "NON_NULL", "name": null, "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } + "kind": "SCALAR", + "name": "String", + "ofType": null } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "message", - "description": "The error message.", + "name": "url", + "description": "The URL of the 3d model.", "args": [], "type": { "kind": "NON_NULL", @@ -20212,463 +19599,783 @@ } ], "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "DisplayableError", - "ofType": null - } - ], + "interfaces": [], "enumValues": null, "possibleTypes": null }, { "kind": "INPUT_OBJECT", - "name": "MetafieldFilter", - "description": "A filter used to view a subset of products in a collection matching a specific metafield value.\n\nOnly the following metafield types are currently supported:\n- `number_integer`\n- `number_decimal`\n- `single_line_text_field`\n- `boolean` as of 2022-04.\n", + "name": "MoneyInput", + "description": "The input fields for a monetary value with currency.", "fields": null, "inputFields": [ { - "name": "key", - "description": "The key of the metafield to filter on.", + "name": "amount", + "description": "Decimal money amount.", "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "String", + "name": "Decimal", "ofType": null } }, "defaultValue": null }, { - "name": "namespace", - "description": "The namespace of the metafield to filter on.", + "name": "currencyCode", + "description": "Currency of the money.", "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "ENUM", + "name": "CurrencyCode", "ofType": null } }, "defaultValue": null - }, + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "MoneyV2", + "description": "A monetary value with currency.\n", + "fields": [ { - "name": "value", - "description": "The value of the metafield.", + "name": "amount", + "description": "Decimal money amount.", + "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "String", + "name": "Decimal", "ofType": null } }, - "defaultValue": null + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "currencyCode", + "description": "Currency of the money.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "CurrencyCode", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null } ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "UNION", - "name": "MetafieldParentResource", - "description": "A resource that the metafield belongs to.", - "fields": null, "inputFields": null, - "interfaces": null, + "interfaces": [], "enumValues": null, - "possibleTypes": [ - { - "kind": "OBJECT", - "name": "Article", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Blog", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Cart", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Collection", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Customer", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Location", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Market", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Order", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Page", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Product", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "ProductVariant", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Shop", - "ofType": null - } - ] + "possibleTypes": null }, { - "kind": "UNION", - "name": "MetafieldReference", - "description": "Returns the resource which is being referred to by a metafield.\n", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": [ - { - "kind": "OBJECT", - "name": "Collection", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "GenericFile", - "ofType": null - }, + "kind": "OBJECT", + "name": "Mutation", + "description": "The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start.", + "fields": [ { - "kind": "OBJECT", - "name": "MediaImage", - "ofType": null + "name": "cartAttributesUpdate", + "description": "Updates the attributes on a cart.", + "args": [ + { + "name": "attributes", + "description": "An array of key-value pairs that contains additional information about the cart.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "AttributeInput", + "ofType": null + } + } + } + }, + "defaultValue": null + }, + { + "name": "cartId", + "description": "The ID of the cart.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "CartAttributesUpdatePayload", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null }, { - "kind": "OBJECT", - "name": "Metaobject", - "ofType": null + "name": "cartBillingAddressUpdate", + "description": "Updates the billing address on the cart.", + "args": [ + { + "name": "cartId", + "description": "The ID of the cart.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "billingAddress", + "description": "The customer's billing address.", + "type": { + "kind": "INPUT_OBJECT", + "name": "MailingAddressInput", + "ofType": null + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "CartBillingAddressUpdatePayload", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null }, { - "kind": "OBJECT", - "name": "Page", - "ofType": null + "name": "cartBuyerIdentityUpdate", + "description": "Updates customer information associated with a cart.\nBuyer identity is used to determine\n[international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing)\nand should match the customer's shipping address.\n", + "args": [ + { + "name": "cartId", + "description": "The ID of the cart.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "buyerIdentity", + "description": "The customer associated with the cart. Used to determine\n[international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing).\nBuyer identity should match the customer's shipping address.\n", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "CartBuyerIdentityInput", + "ofType": null + } + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "CartBuyerIdentityUpdatePayload", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null }, { - "kind": "OBJECT", - "name": "Product", - "ofType": null + "name": "cartCreate", + "description": "Creates a new cart.", + "args": [ + { + "name": "input", + "description": "The fields used to create a cart.", + "type": { + "kind": "INPUT_OBJECT", + "name": "CartInput", + "ofType": null + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "CartCreatePayload", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null }, { - "kind": "OBJECT", - "name": "ProductVariant", - "ofType": null + "name": "cartDiscountCodesUpdate", + "description": "Updates the discount codes applied to the cart.", + "args": [ + { + "name": "cartId", + "description": "The ID of the cart.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "discountCodes", + "description": "The case-insensitive discount codes that the customer added at checkout.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "CartDiscountCodesUpdatePayload", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null }, { - "kind": "OBJECT", - "name": "Video", - "ofType": null - } - ] - }, - { - "kind": "OBJECT", - "name": "MetafieldReferenceConnection", - "description": "An auto-generated type for paginating through multiple MetafieldReferences.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], + "name": "cartGiftCardCodesUpdate", + "description": "Updates the gift card codes applied to the cart.", + "args": [ + { + "name": "cartId", + "description": "The ID of the cart.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "giftCardCodes", + "description": "The case-insensitive gift card codes.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + } + }, + "defaultValue": null + } + ], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { + "kind": "OBJECT", + "name": "CartGiftCardCodesUpdatePayload", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "cartLinesAdd", + "description": "Adds a merchandise line to the cart.", + "args": [ + { + "name": "cartId", + "description": "The ID of the cart.", + "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "MetafieldReferenceEdge", + "kind": "SCALAR", + "name": "ID", "ofType": null } - } + }, + "defaultValue": null + }, + { + "name": "lines", + "description": "A list of merchandise lines to add to the cart.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "CartLineInput", + "ofType": null + } + } + } + }, + "defaultValue": null } + ], + "type": { + "kind": "OBJECT", + "name": "CartLinesAddPayload", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "nodes", - "description": "A list of the nodes contained in MetafieldReferenceEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { + "name": "cartLinesRemove", + "description": "Removes one or more merchandise lines from the cart.", + "args": [ + { + "name": "cartId", + "description": "The ID of the cart.", + "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "UNION", - "name": "MetafieldReference", + "kind": "SCALAR", + "name": "ID", "ofType": null } - } + }, + "defaultValue": null + }, + { + "name": "lineIds", + "description": "The merchandise line IDs to remove.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + } + } + }, + "defaultValue": null } + ], + "type": { + "kind": "OBJECT", + "name": "CartLinesRemovePayload", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null + "name": "cartLinesUpdate", + "description": "Updates one or more merchandise lines on a cart.", + "args": [ + { + "name": "cartId", + "description": "The ID of the cart.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "lines", + "description": "The merchandise lines to update.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "CartLineUpdateInput", + "ofType": null + } + } + } + }, + "defaultValue": null } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "MetafieldReferenceEdge", - "description": "An auto-generated type which holds one MetafieldReference and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], + ], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } + "kind": "OBJECT", + "name": "CartLinesUpdatePayload", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "node", - "description": "The item at the end of MetafieldReferenceEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "UNION", - "name": "MetafieldReference", - "ofType": null + "name": "cartMetafieldDelete", + "description": "Deletes a cart metafield.", + "args": [ + { + "name": "input", + "description": "The input fields used to delete a cart metafield.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "CartMetafieldDeleteInput", + "ofType": null + } + }, + "defaultValue": null } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "MetafieldsSetUserError", - "description": "An error that occurs during the execution of `MetafieldsSet`.", - "fields": [ - { - "name": "code", - "description": "The error code.", - "args": [], + ], "type": { - "kind": "ENUM", - "name": "MetafieldsSetUserErrorCode", + "kind": "OBJECT", + "name": "CartMetafieldDeletePayload", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "elementIndex", - "description": "The index of the array element that's causing the error.", - "args": [], + "name": "cartMetafieldsSet", + "description": "Sets cart metafield values. Cart metafield values will be set regardless if they were previously created or not.\n\nAllows a maximum of 25 cart metafields to be set at a time.\n", + "args": [ + { + "name": "metafields", + "description": "The list of Cart metafield values to set. Maximum of 25.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "CartMetafieldsSetInput", + "ofType": null + } + } + } + }, + "defaultValue": null + } + ], "type": { - "kind": "SCALAR", - "name": "Int", + "kind": "OBJECT", + "name": "CartMetafieldsSetPayload", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "field", - "description": "The path to the input field that caused the error.", - "args": [], - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } + "name": "cartNoteUpdate", + "description": "Updates the note on the cart.", + "args": [ + { + "name": "cartId", + "description": "The ID of the cart.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "note", + "description": "The note on the cart.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null } + ], + "type": { + "kind": "OBJECT", + "name": "CartNoteUpdatePayload", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "message", - "description": "The error message.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "name": "cartPaymentUpdate", + "description": "Update the customer's payment method that will be used to checkout.", + "args": [ + { + "name": "cartId", + "description": "The ID of the cart.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "payment", + "description": "The payment information for the cart that will be used at checkout.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "CartPaymentInput", + "ofType": null + } + }, + "defaultValue": null } + ], + "type": { + "kind": "OBJECT", + "name": "CartPaymentUpdatePayload", + "ofType": null }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "DisplayableError", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "MetafieldsSetUserErrorCode", - "description": "Possible error codes that can be returned by `MetafieldsSetUserError`.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "BLANK", - "description": "The input value is blank.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "INCLUSION", - "description": "The input value isn't included in the list.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "LESS_THAN_OR_EQUAL_TO", - "description": "The input value should be less than or equal to the maximum value allowed.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PRESENT", - "description": "The input value needs to be blank.", - "isDeprecated": false, - "deprecationReason": null }, { - "name": "TOO_SHORT", - "description": "The input value is too short.", + "name": "cartSelectedDeliveryOptionsUpdate", + "description": "Update the selected delivery options for a delivery group.", + "args": [ + { + "name": "cartId", + "description": "The ID of the cart.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "selectedDeliveryOptions", + "description": "The selected delivery options.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "CartSelectedDeliveryOptionInput", + "ofType": null + } + } + } + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "CartSelectedDeliveryOptionsUpdatePayload", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "TOO_LONG", - "description": "The input value is too long.", + "name": "cartSubmitForCompletion", + "description": "Submit the cart for checkout completion.", + "args": [ + { + "name": "cartId", + "description": "The ID of the cart.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "attemptToken", + "description": "The attemptToken is used to guarantee an idempotent result.\nIf more than one call uses the same attemptToken within a short period of time, only one will be accepted.\n", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "CartSubmitForCompletionPayload", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "INVALID_OWNER", - "description": "The owner ID is invalid.", + "name": "customerAccessTokenCreate", + "description": "Creates a customer access token.\nThe customer access token is required to modify the customer object in any way.\n", + "args": [ + { + "name": "input", + "description": "The fields used to create a customer access token.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "CustomerAccessTokenCreateInput", + "ofType": null + } + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "CustomerAccessTokenCreatePayload", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "INVALID_VALUE", - "description": "The value is invalid for metafield type or for definition options.", + "name": "customerAccessTokenCreateWithMultipass", + "description": "Creates a customer access token using a\n[multipass token](https://shopify.dev/api/multipass) instead of email and\npassword. A customer record is created if the customer doesn't exist. If a customer\nrecord already exists but the record is disabled, then the customer record is enabled.\n", + "args": [ + { + "name": "multipassToken", + "description": "A valid [multipass token](https://shopify.dev/api/multipass) to be authenticated.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "CustomerAccessTokenCreateWithMultipassPayload", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "INVALID_TYPE", - "description": "The type is invalid.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Metaobject", - "description": "An instance of a user-defined model based on a MetaobjectDefinition.", - "fields": [ - { - "name": "field", - "description": "Accesses a field of the object by key.", + "name": "customerAccessTokenDelete", + "description": "Permanently destroys a customer access token.", "args": [ { - "name": "key", - "description": "The key of the field.", + "name": "customerAccessToken", + "description": "The access token used to identify the customer.", "type": { "kind": "NON_NULL", "name": null, @@ -20683,329 +20390,566 @@ ], "type": { "kind": "OBJECT", - "name": "MetaobjectField", + "name": "CustomerAccessTokenDeletePayload", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "fields", - "description": "All object fields with defined values.\nOmitted object keys can be assumed null, and no guarantees are made about field order.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { + "name": "customerAccessTokenRenew", + "description": "Renews a customer access token.\n\nAccess token renewal must happen *before* a token expires.\nIf a token has already expired, a new one should be created instead via `customerAccessTokenCreate`.\n", + "args": [ + { + "name": "customerAccessToken", + "description": "The access token used to identify the customer.", + "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "MetaobjectField", + "kind": "SCALAR", + "name": "String", "ofType": null } - } + }, + "defaultValue": null } + ], + "type": { + "kind": "OBJECT", + "name": "CustomerAccessTokenRenewPayload", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "handle", - "description": "The unique handle of the metaobject. Useful as a custom ID.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "name": "customerActivate", + "description": "Activates a customer.", + "args": [ + { + "name": "id", + "description": "Specifies the customer to activate.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "input", + "description": "The fields used to activate a customer.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "CustomerActivateInput", + "ofType": null + } + }, + "defaultValue": null } + ], + "type": { + "kind": "OBJECT", + "name": "CustomerActivatePayload", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "id", - "description": "A globally-unique ID.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null + "name": "customerActivateByUrl", + "description": "Activates a customer with the activation url received from `customerCreate`.", + "args": [ + { + "name": "activationUrl", + "description": "The customer activation URL.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "URL", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "password", + "description": "A new password set during activation.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null } + ], + "type": { + "kind": "OBJECT", + "name": "CustomerActivateByUrlPayload", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "onlineStoreUrl", - "description": "The URL used for viewing the metaobject on the shop's Online Store. Returns `null` if the metaobject definition doesn't have the `online_store` capability.", - "args": [], + "name": "customerAddressCreate", + "description": "Creates a new address for a customer.", + "args": [ + { + "name": "customerAccessToken", + "description": "The access token used to identify the customer.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "address", + "description": "The customer mailing address to create.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "MailingAddressInput", + "ofType": null + } + }, + "defaultValue": null + } + ], "type": { - "kind": "SCALAR", - "name": "URL", + "kind": "OBJECT", + "name": "CustomerAddressCreatePayload", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "seo", - "description": "The metaobject's SEO information. Returns `null` if the metaobject definition\ndoesn't have the `renderable` capability.\n", - "args": [], + "name": "customerAddressDelete", + "description": "Permanently deletes the address of an existing customer.", + "args": [ + { + "name": "id", + "description": "Specifies the address to delete.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "customerAccessToken", + "description": "The access token used to identify the customer.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + } + ], "type": { "kind": "OBJECT", - "name": "MetaobjectSEO", + "name": "CustomerAddressDeletePayload", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "type", - "description": "The type of the metaobject. Defines the namespace of its associated metafields.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "name": "customerAddressUpdate", + "description": "Updates the address of an existing customer.", + "args": [ + { + "name": "customerAccessToken", + "description": "The access token used to identify the customer.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "id", + "description": "Specifies the customer address to update.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "address", + "description": "The customer’s mailing address.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "MailingAddressInput", + "ofType": null + } + }, + "defaultValue": null } + ], + "type": { + "kind": "OBJECT", + "name": "CustomerAddressUpdatePayload", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "updatedAt", - "description": "The date and time when the metaobject was last updated.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null + "name": "customerCreate", + "description": "Creates a new customer.", + "args": [ + { + "name": "input", + "description": "The fields used to create a new customer.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "CustomerCreateInput", + "ofType": null + } + }, + "defaultValue": null } + ], + "type": { + "kind": "OBJECT", + "name": "CustomerCreatePayload", + "ofType": null }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null }, { - "kind": "INTERFACE", - "name": "OnlineStorePublishable", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "MetaobjectConnection", - "description": "An auto-generated type for paginating through multiple Metaobjects.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { + "name": "customerDefaultAddressUpdate", + "description": "Updates the default address of an existing customer.", + "args": [ + { + "name": "customerAccessToken", + "description": "The access token used to identify the customer.", + "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "MetaobjectEdge", + "kind": "SCALAR", + "name": "String", "ofType": null } - } + }, + "defaultValue": null + }, + { + "name": "addressId", + "description": "ID of the address to set as the new default for the customer.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null } + ], + "type": { + "kind": "OBJECT", + "name": "CustomerDefaultAddressUpdatePayload", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "nodes", - "description": "A list of the nodes contained in MetaobjectEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { + "name": "customerRecover", + "description": "Sends a reset password email to the customer. The reset password\nemail contains a reset password URL and token that you can pass to\nthe [`customerResetByUrl`](https://shopify.dev/api/storefront/latest/mutations/customerResetByUrl) or\n[`customerReset`](https://shopify.dev/api/storefront/latest/mutations/customerReset) mutation to reset the\ncustomer password.\n\nThis mutation is throttled by IP. With private access,\nyou can provide a [`Shopify-Storefront-Buyer-IP`](https://shopify.dev/api/usage/authentication#optional-ip-header) instead of the request IP.\nThe header is case-sensitive and must be sent as `Shopify-Storefront-Buyer-IP`.\n\nMake sure that the value provided to `Shopify-Storefront-Buyer-IP` is trusted. Unthrottled access to this\nmutation presents a security risk.\n", + "args": [ + { + "name": "email", + "description": "The email address of the customer to recover.", + "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "Metaobject", + "kind": "SCALAR", + "name": "String", "ofType": null } - } + }, + "defaultValue": null } + ], + "type": { + "kind": "OBJECT", + "name": "CustomerRecoverPayload", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null + "name": "customerReset", + "description": "\"Resets a customer’s password with the token received from a reset password email. You can send a reset password email with the [`customerRecover`](https://shopify.dev/api/storefront/latest/mutations/customerRecover) mutation.\"\n", + "args": [ + { + "name": "id", + "description": "Specifies the customer to reset.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "input", + "description": "The fields used to reset a customer’s password.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "CustomerResetInput", + "ofType": null + } + }, + "defaultValue": null } + ], + "type": { + "kind": "OBJECT", + "name": "CustomerResetPayload", + "ofType": null }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "MetaobjectEdge", - "description": "An auto-generated type which holds one Metaobject and a cursor during pagination.\n", - "fields": [ + }, { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "name": "customerResetByUrl", + "description": "\"Resets a customer’s password with the reset password URL received from a reset password email. You can send a reset password email with the [`customerRecover`](https://shopify.dev/api/storefront/latest/mutations/customerRecover) mutation.\"\n", + "args": [ + { + "name": "resetUrl", + "description": "The customer's reset password url.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "URL", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "password", + "description": "New password that will be set as part of the reset password process.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null } + ], + "type": { + "kind": "OBJECT", + "name": "CustomerResetByUrlPayload", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "node", - "description": "The item at the end of MetaobjectEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Metaobject", - "ofType": null + "name": "customerUpdate", + "description": "Updates an existing customer.", + "args": [ + { + "name": "customerAccessToken", + "description": "The access token used to identify the customer.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "customer", + "description": "The customer object input.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "CustomerUpdateInput", + "ofType": null + } + }, + "defaultValue": null } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "MetaobjectField", - "description": "Provides the value of a Metaobject field.", - "fields": [ - { - "name": "key", - "description": "The field key.", - "args": [], + ], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } + "kind": "OBJECT", + "name": "CustomerUpdatePayload", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "reference", - "description": "A referenced object if the field type is a resource reference.", - "args": [], + "name": "shopPayPaymentRequestSessionCreate", + "description": "Create a new Shop Pay payment request session.", + "args": [ + { + "name": "sourceIdentifier", + "description": "A unique identifier for the payment request session.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "paymentRequest", + "description": "A payment request object.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "ShopPayPaymentRequestInput", + "ofType": null + } + }, + "defaultValue": null + } + ], "type": { - "kind": "UNION", - "name": "MetafieldReference", + "kind": "OBJECT", + "name": "ShopPayPaymentRequestSessionCreatePayload", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "references", - "description": "A list of referenced objects if the field type is a resource reference list.", + "name": "shopPayPaymentRequestSessionSubmit", + "description": "Submits a Shop Pay payment request session.", "args": [ { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", + "name": "token", + "description": "A token representing a payment session request.", "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } }, "defaultValue": null }, { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", + "name": "paymentRequest", + "description": "The final payment request object.", "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "ShopPayPaymentRequestInput", + "ofType": null + } }, "defaultValue": null }, { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", + "name": "idempotencyKey", + "description": "The idempotency key is used to guarantee an idempotent result.", "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } }, "defaultValue": null }, { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", + "name": "orderName", + "description": "The order name to be used for the order created from the payment request.", "type": { "kind": "SCALAR", "name": "String", @@ -21016,109 +20960,223 @@ ], "type": { "kind": "OBJECT", - "name": "MetafieldReferenceConnection", + "name": "ShopPayPaymentRequestSessionSubmitPayload", "ofType": null }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INTERFACE", + "name": "Node", + "description": "An object with an ID field to support global identification, in accordance with the\n[Relay specification](https://relay.dev/graphql/objectidentification.htm#sec-Node-Interface).\nThis interface is used by the [node](https://shopify.dev/api/admin-graphql/unstable/queries/node)\nand [nodes](https://shopify.dev/api/admin-graphql/unstable/queries/nodes) queries.\n", + "fields": [ { - "name": "type", - "description": "The type name of the field.\nSee the list of [supported types](https://shopify.dev/apps/metafields/definitions/types).\n", + "name": "id", + "description": "A globally-unique ID.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "String", + "name": "ID", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - }, - { - "name": "value", - "description": "The field value.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null } ], "inputFields": null, "interfaces": [], "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "MetaobjectHandleInput", - "description": "The input fields used to retrieve a metaobject by handle.", - "fields": null, - "inputFields": [ + "possibleTypes": [ { - "name": "handle", - "description": "The handle of the metaobject.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null + "kind": "OBJECT", + "name": "AppliedGiftCard", + "ofType": null }, { - "name": "type", - "description": "The type of the metaobject.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null + "kind": "OBJECT", + "name": "Article", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Blog", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Cart", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "CartLine", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Collection", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Comment", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Company", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "CompanyContact", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "CompanyLocation", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "ComponentizableCartLine", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "ExternalVideo", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "GenericFile", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Location", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "MailingAddress", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Market", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "MediaImage", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "MediaPresentation", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Menu", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "MenuItem", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Metafield", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Metaobject", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Model3d", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Order", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Page", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Product", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "ProductOption", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "ProductOptionValue", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "ProductVariant", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Shop", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "ShopPolicy", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "UrlRedirect", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Video", + "ofType": null } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null + ] }, { - "kind": "OBJECT", - "name": "MetaobjectSEO", - "description": "SEO information for a metaobject.", + "kind": "INTERFACE", + "name": "OnlineStorePublishable", + "description": "Represents a resource that can be published to the Online Store sales channel.", "fields": [ { - "name": "description", - "description": "The meta description.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MetaobjectField", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "title", - "description": "The SEO title.", + "name": "onlineStoreUrl", + "description": "The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel.", "args": [], "type": { - "kind": "OBJECT", - "name": "MetaobjectField", + "kind": "SCALAR", + "name": "URL", "ofType": null }, "isDeprecated": false, @@ -21128,137 +21186,90 @@ "inputFields": null, "interfaces": [], "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Model3d", - "description": "Represents a Shopify hosted 3D model.", - "fields": [ + "possibleTypes": [ { - "name": "alt", - "description": "A word or phrase to share the nature or contents of a media.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null + "kind": "OBJECT", + "name": "Article", + "ofType": null }, { - "name": "id", - "description": "A globally-unique ID.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null + "kind": "OBJECT", + "name": "Blog", + "ofType": null }, { - "name": "mediaContentType", - "description": "The media content type.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "MediaContentType", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null + "kind": "OBJECT", + "name": "Collection", + "ofType": null }, { - "name": "presentation", - "description": "The presentation for a media.", + "kind": "OBJECT", + "name": "Metaobject", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Page", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Product", + "ofType": null + } + ] + }, + { + "kind": "OBJECT", + "name": "Order", + "description": "An order is a customer’s completed request to purchase one or more products from a shop. An order is created when a customer completes the checkout process, during which time they provides an email address, billing address and payment information.", + "fields": [ + { + "name": "billingAddress", + "description": "The address associated with the payment method.", "args": [], "type": { "kind": "OBJECT", - "name": "MediaPresentation", + "name": "MailingAddress", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "previewImage", - "description": "The preview image for the media.", + "name": "cancelReason", + "description": "The reason for the order's cancellation. Returns `null` if the order wasn't canceled.", "args": [], "type": { - "kind": "OBJECT", - "name": "Image", + "kind": "ENUM", + "name": "OrderCancelReason", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "sources", - "description": "The sources for a 3d model.", + "name": "canceledAt", + "description": "The date and time when the order was canceled. Returns null if the order wasn't canceled.", "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Model3dSource", - "ofType": null - } - } - } + "type": { + "kind": "SCALAR", + "name": "DateTime", + "ofType": null }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Media", - "ofType": null }, { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Model3dSource", - "description": "Represents a source for a Shopify hosted 3d model.", - "fields": [ - { - "name": "filesize", - "description": "The filesize of the 3d model.", + "name": "currencyCode", + "description": "The code of the currency used for the payment.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "Int", + "kind": "ENUM", + "name": "CurrencyCode", "ofType": null } }, @@ -21266,15 +21277,15 @@ "deprecationReason": null }, { - "name": "format", - "description": "The format of the 3d model.", + "name": "currentSubtotalPrice", + "description": "The subtotal of line items and their discounts, excluding line items that have been removed. Does not contain order-level discounts, duties, shipping costs, or shipping discounts. Taxes aren't included unless the order is a taxes-included order.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "MoneyV2", "ofType": null } }, @@ -21282,448 +21293,342 @@ "deprecationReason": null }, { - "name": "mimeType", - "description": "The MIME type of the 3d model.", + "name": "currentTotalDuties", + "description": "The total cost of duties for the order, including refunds.", "args": [], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } + "kind": "OBJECT", + "name": "MoneyV2", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "url", - "description": "The URL of the 3d model.", + "name": "currentTotalPrice", + "description": "The total amount of the order, including duties, taxes and discounts, minus amounts for line items that have been removed.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "MoneyV2", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "MoneyInput", - "description": "The input fields for a monetary value with currency.", - "fields": null, - "inputFields": [ + }, { - "name": "amount", - "description": "Decimal money amount.", + "name": "currentTotalShippingPrice", + "description": "The total cost of shipping, excluding shipping lines that have been refunded or removed. Taxes aren't included unless the order is a taxes-included order.", + "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "Decimal", + "kind": "OBJECT", + "name": "MoneyV2", "ofType": null } }, - "defaultValue": null + "isDeprecated": false, + "deprecationReason": null }, { - "name": "currencyCode", - "description": "Currency of the money.", + "name": "currentTotalTax", + "description": "The total of all taxes applied to the order, excluding taxes for returned line items.", + "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "ENUM", - "name": "CurrencyCode", + "kind": "OBJECT", + "name": "MoneyV2", "ofType": null } }, - "defaultValue": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "MoneyV2", - "description": "A monetary value with currency.\n", - "fields": [ + "isDeprecated": false, + "deprecationReason": null + }, { - "name": "amount", - "description": "Decimal money amount.", + "name": "customAttributes", + "description": "A list of the custom attributes added to the order. For example, whether an order is a customer's first.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "Decimal", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Attribute", + "ofType": null + } + } } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "currencyCode", - "description": "Currency of the money.", + "name": "customerLocale", + "description": "The locale code in which this specific order happened.", "args": [], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "CurrencyCode", - "ofType": null - } + "kind": "SCALAR", + "name": "String", + "ofType": null }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Mutation", - "description": "The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start.", - "fields": [ + }, { - "name": "cartAttributesUpdate", - "description": "Updates the attributes on a cart.", + "name": "customerUrl", + "description": "The unique URL that the customer can use to access the order.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "URL", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "discountApplications", + "description": "Discounts that have been applied on the order.", "args": [ { - "name": "attributes", - "description": "An array of key-value pairs that contains additional information about the cart.", + "name": "first", + "description": "Returns up to the first `n` elements from the list.", "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "AttributeInput", - "ofType": null - } - } - } + "kind": "SCALAR", + "name": "Int", + "ofType": null }, "defaultValue": null }, { - "name": "cartId", - "description": "The ID of the cart.", + "name": "after", + "description": "Returns the elements that come after the specified cursor.", "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } + "kind": "SCALAR", + "name": "String", + "ofType": null }, "defaultValue": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CartAttributesUpdatePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "cartBuyerIdentityUpdate", - "description": "Updates customer information associated with a cart.\nBuyer identity is used to determine\n[international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing)\nand should match the customer's shipping address.\n", - "args": [ + }, { - "name": "cartId", - "description": "The ID of the cart.", + "name": "last", + "description": "Returns up to the last `n` elements from the list.", "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } + "kind": "SCALAR", + "name": "Int", + "ofType": null }, "defaultValue": null }, { - "name": "buyerIdentity", - "description": "The customer associated with the cart. Used to determine\n[international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing).\nBuyer identity should match the customer's shipping address.\n", + "name": "before", + "description": "Returns the elements that come before the specified cursor.", "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CartBuyerIdentityInput", - "ofType": null - } + "kind": "SCALAR", + "name": "String", + "ofType": null }, "defaultValue": null + }, + { + "name": "reverse", + "description": "Reverse the order of the underlying list.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false" } ], "type": { - "kind": "OBJECT", - "name": "CartBuyerIdentityUpdatePayload", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "DiscountApplicationConnection", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "cartCreate", - "description": "Creates a new cart.", - "args": [ - { - "name": "input", - "description": "The fields used to create a cart.", - "type": { - "kind": "INPUT_OBJECT", - "name": "CartInput", - "ofType": null - }, - "defaultValue": null + "name": "edited", + "description": "Whether the order has had any edits applied or not.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null } - ], + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "email", + "description": "The customer's email address.", + "args": [], "type": { - "kind": "OBJECT", - "name": "CartCreatePayload", + "kind": "SCALAR", + "name": "String", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "cartDiscountCodesUpdate", - "description": "Updates the discount codes applied to the cart.", - "args": [ - { - "name": "cartId", - "description": "The ID of the cart.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "discountCodes", - "description": "The case-insensitive discount codes that the customer added at checkout.\n", - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - } - }, - "defaultValue": null - } - ], + "name": "financialStatus", + "description": "The financial status of the order.", + "args": [], "type": { - "kind": "OBJECT", - "name": "CartDiscountCodesUpdatePayload", + "kind": "ENUM", + "name": "OrderFinancialStatus", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "cartLinesAdd", - "description": "Adds a merchandise line to the cart.", - "args": [ - { - "name": "lines", - "description": "A list of merchandise lines to add to the cart.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CartLineInput", - "ofType": null - } - } - } - }, - "defaultValue": null - }, - { - "name": "cartId", - "description": "The ID of the cart.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null + "name": "fulfillmentStatus", + "description": "The fulfillment status for the order.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "OrderFulfillmentStatus", + "ofType": null } - ], + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "id", + "description": "A globally-unique ID.", + "args": [], "type": { - "kind": "OBJECT", - "name": "CartLinesAddPayload", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "cartLinesRemove", - "description": "Removes one or more merchandise lines from the cart.", + "name": "lineItems", + "description": "List of the order’s line items.", "args": [ { - "name": "cartId", - "description": "The ID of the cart.", + "name": "first", + "description": "Returns up to the first `n` elements from the list.", "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } + "kind": "SCALAR", + "name": "Int", + "ofType": null }, "defaultValue": null }, { - "name": "lineIds", - "description": "The merchandise line IDs to remove.", + "name": "after", + "description": "Returns the elements that come after the specified cursor.", "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - } - } + "kind": "SCALAR", + "name": "String", + "ofType": null }, "defaultValue": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CartLinesRemovePayload", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "cartLinesUpdate", - "description": "Updates one or more merchandise lines on a cart.", - "args": [ + }, { - "name": "cartId", - "description": "The ID of the cart.", + "name": "last", + "description": "Returns up to the last `n` elements from the list.", "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } + "kind": "SCALAR", + "name": "Int", + "ofType": null }, "defaultValue": null }, { - "name": "lines", - "description": "The merchandise lines to update.", + "name": "before", + "description": "Returns the elements that come before the specified cursor.", "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CartLineUpdateInput", - "ofType": null - } - } - } + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "reverse", + "description": "Reverse the order of the underlying list.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null }, - "defaultValue": null + "defaultValue": "false" } ], "type": { - "kind": "OBJECT", - "name": "CartLinesUpdatePayload", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "OrderLineItemConnection", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "cartMetafieldDelete", - "description": "Deletes a cart metafield.", + "name": "metafield", + "description": "Returns a metafield found by namespace and key.", "args": [ { - "name": "input", - "description": "The input fields used to delete a cart metafield.", + "name": "namespace", + "description": "The container the metafield belongs to. If omitted, the app-reserved namespace will be used.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "key", + "description": "The identifier for the metafield.", "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "INPUT_OBJECT", - "name": "CartMetafieldDeleteInput", + "kind": "SCALAR", + "name": "String", "ofType": null } }, @@ -21732,19 +21637,19 @@ ], "type": { "kind": "OBJECT", - "name": "CartMetafieldDeletePayload", + "name": "Metafield", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "cartMetafieldsSet", - "description": "Sets cart metafield values. Cart metafield values will be set regardless if they were previously created or not.\n\nAllows a maximum of 25 cart metafields to be set at a time.\n", + "name": "metafields", + "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.", "args": [ { - "name": "metafields", - "description": "The list of Cart metafield values to set. Maximum of 25.", + "name": "identifiers", + "description": "The list of metafields to retrieve by namespace and key.\n\nThe input must not contain more than `250` values.", "type": { "kind": "NON_NULL", "name": null, @@ -21756,7 +21661,7 @@ "name": null, "ofType": { "kind": "INPUT_OBJECT", - "name": "CartMetafieldsSetInput", + "name": "HasMetafieldsIdentifier", "ofType": null } } @@ -21765,1049 +21670,1065 @@ "defaultValue": null } ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Metafield", + "ofType": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": "Unique identifier for the order that appears on the order.\nFor example, _#1000_ or _Store1001.\n", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "orderNumber", + "description": "A unique numeric identifier for the order for use by shop owner and customer.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "originalTotalDuties", + "description": "The total cost of duties charged at checkout.", + "args": [], "type": { "kind": "OBJECT", - "name": "CartMetafieldsSetPayload", + "name": "MoneyV2", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "cartNoteUpdate", - "description": "Updates the note on the cart.", - "args": [ - { - "name": "cartId", - "description": "The ID of the cart.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "note", - "description": "The note on the cart.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null + "name": "originalTotalPrice", + "description": "The total price of the order before any applied edits.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "MoneyV2", + "ofType": null } - ], + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "phone", + "description": "The customer's phone number for receiving SMS notifications.", + "args": [], "type": { - "kind": "OBJECT", - "name": "CartNoteUpdatePayload", + "kind": "SCALAR", + "name": "String", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "cartPaymentUpdate", - "description": "Update the customer's payment method that will be used to checkout.", - "args": [ - { - "name": "cartId", - "description": "The ID of the cart.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "payment", - "description": "The payment information for the cart that will be used at checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CartPaymentInput", - "ofType": null - } - }, - "defaultValue": null + "name": "processedAt", + "description": "The date and time when the order was imported.\nThis value can be set to dates in the past when importing from other systems.\nIf no value is provided, it will be auto-generated based on current date and time.\n", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "DateTime", + "ofType": null } - ], + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "shippingAddress", + "description": "The address to where the order will be shipped.", + "args": [], "type": { "kind": "OBJECT", - "name": "CartPaymentUpdatePayload", + "name": "MailingAddress", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "cartSelectedDeliveryOptionsUpdate", - "description": "Update the selected delivery options for a delivery group.", - "args": [ - { - "name": "cartId", - "description": "The ID of the cart.", - "type": { + "name": "shippingDiscountAllocations", + "description": "The discounts that have been allocated onto the shipping line by discount applications.\n", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "ID", + "kind": "OBJECT", + "name": "DiscountAllocation", "ofType": null } - }, - "defaultValue": null - }, - { - "name": "selectedDeliveryOptions", - "description": "The selected delivery options.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CartSelectedDeliveryOptionInput", - "ofType": null - } - } - } - }, - "defaultValue": null + } } - ], + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "statusUrl", + "description": "The unique URL for the order's status page.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "URL", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "subtotalPrice", + "description": "Price of the order before shipping and taxes.", + "args": [], "type": { "kind": "OBJECT", - "name": "CartSelectedDeliveryOptionsUpdatePayload", + "name": "MoneyV2", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "cartSubmitForCompletion", - "description": "Submit the cart for checkout completion.", + "name": "subtotalPriceV2", + "description": "Price of the order before duties, shipping and taxes.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "MoneyV2", + "ofType": null + }, + "isDeprecated": true, + "deprecationReason": "Use `subtotalPrice` instead." + }, + { + "name": "successfulFulfillments", + "description": "List of the order’s successful fulfillments.", "args": [ { - "name": "cartId", - "description": "The ID of the cart.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "attemptToken", - "description": "The attemptToken is used to guarantee an idempotent result.\nIf more than one call uses the same attemptToken within a short period of time, only one will be accepted.\n", + "name": "first", + "description": "Truncate the array result to this size.", "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } + "kind": "SCALAR", + "name": "Int", + "ofType": null }, "defaultValue": null } ], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Fulfillment", + "ofType": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "totalPrice", + "description": "The sum of all the prices of all the items in the order, duties, taxes and discounts included (must be positive).", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "MoneyV2", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "totalPriceV2", + "description": "The sum of all the prices of all the items in the order, duties, taxes and discounts included (must be positive).", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "MoneyV2", + "ofType": null + } + }, + "isDeprecated": true, + "deprecationReason": "Use `totalPrice` instead." + }, + { + "name": "totalRefunded", + "description": "The total amount that has been refunded.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "MoneyV2", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "totalRefundedV2", + "description": "The total amount that has been refunded.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "MoneyV2", + "ofType": null + } + }, + "isDeprecated": true, + "deprecationReason": "Use `totalRefunded` instead." + }, + { + "name": "totalShippingPrice", + "description": "The total cost of shipping.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "MoneyV2", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "totalShippingPriceV2", + "description": "The total cost of shipping.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "MoneyV2", + "ofType": null + } + }, + "isDeprecated": true, + "deprecationReason": "Use `totalShippingPrice` instead." + }, + { + "name": "totalTax", + "description": "The total cost of taxes.", + "args": [], "type": { "kind": "OBJECT", - "name": "CartSubmitForCompletionPayload", + "name": "MoneyV2", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "checkoutAttributesUpdateV2", - "description": "Updates the attributes of a checkout if `allowPartialAddresses` is `true`.", - "args": [ - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "input", - "description": "The checkout attributes to update.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CheckoutAttributesUpdateV2Input", - "ofType": null - } - }, - "defaultValue": null - } - ], + "name": "totalTaxV2", + "description": "The total cost of taxes.", + "args": [], "type": { "kind": "OBJECT", - "name": "CheckoutAttributesUpdateV2Payload", + "name": "MoneyV2", "ofType": null }, + "isDeprecated": true, + "deprecationReason": "Use `totalTax` instead." + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "HasMetafields", + "ofType": null + }, + { + "kind": "INTERFACE", + "name": "Node", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "OrderCancelReason", + "description": "Represents the reason for the order's cancellation.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "CUSTOMER", + "description": "The customer wanted to cancel the order.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "DECLINED", + "description": "Payment was declined.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "FRAUD", + "description": "The order was fraudulent.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "INVENTORY", + "description": "There was insufficient inventory.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "STAFF", + "description": "Staff made an error.", "isDeprecated": false, "deprecationReason": null }, { - "name": "checkoutCompleteFree", - "description": "Completes a checkout without providing payment information. You can use this mutation for free items or items whose purchase price is covered by a gift card.", - "args": [ - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { + "name": "OTHER", + "description": "The order was canceled for an unlisted reason.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "OrderConnection", + "description": "An auto-generated type for paginating through multiple Orders.\n", + "fields": [ + { + "name": "edges", + "description": "A list of edges.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "ID", + "kind": "OBJECT", + "name": "OrderEdge", "ofType": null } - }, - "defaultValue": null + } } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutCompleteFreePayload", - "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "checkoutCompleteWithCreditCardV2", - "description": "Completes a checkout using a credit card token from Shopify's card vault. Before you can complete checkouts using CheckoutCompleteWithCreditCardV2, you need to [_request payment processing_](https://shopify.dev/apps/channels/getting-started#request-payment-processing).", - "args": [ - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "payment", - "description": "The credit card info to apply as a payment.", - "type": { + "name": "nodes", + "description": "A list of the nodes contained in OrderEdge.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "INPUT_OBJECT", - "name": "CreditCardPaymentInputV2", + "kind": "OBJECT", + "name": "Order", "ofType": null } - }, - "defaultValue": null + } } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutCompleteWithCreditCardV2Payload", - "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "checkoutCompleteWithTokenizedPaymentV3", - "description": "Completes a checkout with a tokenized payment.", - "args": [ - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "payment", - "description": "The info to apply as a tokenized payment.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "TokenizedPaymentInputV3", - "ofType": null - } - }, - "defaultValue": null - } - ], + "name": "pageInfo", + "description": "Information to aid in pagination.", + "args": [], "type": { - "kind": "OBJECT", - "name": "CheckoutCompleteWithTokenizedPaymentV3Payload", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "PageInfo", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "checkoutCreate", - "description": "Creates a new checkout.", - "args": [ - { - "name": "input", - "description": "The fields used to create a checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CheckoutCreateInput", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "queueToken", - "description": "The checkout queue token. Available only to selected stores.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - } - ], + "name": "totalCount", + "description": "The total count of Orders.", + "args": [], "type": { - "kind": "OBJECT", - "name": "CheckoutCreatePayload", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "UnsignedInt64", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "OrderEdge", + "description": "An auto-generated type which holds one Order and a cursor during pagination.\n", + "fields": [ { - "name": "checkoutCustomerAssociateV2", - "description": "Associates a customer to the checkout.", - "args": [ - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "customerAccessToken", - "description": "The customer access token of the customer to associate.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - } - ], + "name": "cursor", + "description": "A cursor for use in pagination.", + "args": [], "type": { - "kind": "OBJECT", - "name": "CheckoutCustomerAssociateV2Payload", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "checkoutCustomerDisassociateV2", - "description": "Disassociates the current checkout customer from the checkout.", - "args": [ - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null - } - ], + "name": "node", + "description": "The item at the end of OrderEdge.", + "args": [], "type": { - "kind": "OBJECT", - "name": "CheckoutCustomerDisassociateV2Payload", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Order", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "OrderFinancialStatus", + "description": "Represents the order's current financial status.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "PENDING", + "description": "Displayed as **Pending**.", + "isDeprecated": false, + "deprecationReason": null }, { - "name": "checkoutDiscountCodeApplyV2", - "description": "Applies a discount to an existing checkout using a discount code.", - "args": [ - { - "name": "discountCode", - "description": "The discount code to apply to the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutDiscountCodeApplyV2Payload", - "ofType": null - }, + "name": "AUTHORIZED", + "description": "Displayed as **Authorized**.", "isDeprecated": false, "deprecationReason": null }, { - "name": "checkoutDiscountCodeRemove", - "description": "Removes the applied discounts from an existing checkout.", - "args": [ - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutDiscountCodeRemovePayload", - "ofType": null - }, + "name": "PARTIALLY_PAID", + "description": "Displayed as **Partially paid**.", "isDeprecated": false, "deprecationReason": null }, { - "name": "checkoutEmailUpdateV2", - "description": "Updates the email on an existing checkout.", - "args": [ - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "email", - "description": "The email to update the checkout with.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutEmailUpdateV2Payload", - "ofType": null - }, + "name": "PARTIALLY_REFUNDED", + "description": "Displayed as **Partially refunded**.", "isDeprecated": false, "deprecationReason": null }, { - "name": "checkoutGiftCardRemoveV2", - "description": "Removes an applied gift card from the checkout.", - "args": [ - { - "name": "appliedGiftCardId", - "description": "The ID of the Applied Gift Card to remove from the Checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutGiftCardRemoveV2Payload", - "ofType": null - }, + "name": "VOIDED", + "description": "Displayed as **Voided**.", "isDeprecated": false, "deprecationReason": null }, { - "name": "checkoutGiftCardsAppend", - "description": "Appends gift cards to an existing checkout.", - "args": [ - { - "name": "giftCardCodes", - "description": "A list of gift card codes to append to the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - } - } - }, - "defaultValue": null - }, - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null - } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutGiftCardsAppendPayload", - "ofType": null - }, + "name": "PAID", + "description": "Displayed as **Paid**.", "isDeprecated": false, "deprecationReason": null }, { - "name": "checkoutLineItemsAdd", - "description": "Adds a list of line items to a checkout.", - "args": [ - { - "name": "lineItems", - "description": "A list of line item objects to add to the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CheckoutLineItemInput", - "ofType": null - } - } - } - }, - "defaultValue": null - }, - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null - } - ], + "name": "REFUNDED", + "description": "Displayed as **Refunded**.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "OrderFulfillmentStatus", + "description": "Represents the order's aggregated fulfillment status for display purposes.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "UNFULFILLED", + "description": "Displayed as **Unfulfilled**. None of the items in the order have been fulfilled.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "PARTIALLY_FULFILLED", + "description": "Displayed as **Partially fulfilled**. Some of the items in the order have been fulfilled.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "FULFILLED", + "description": "Displayed as **Fulfilled**. All of the items in the order have been fulfilled.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "RESTOCKED", + "description": "Displayed as **Restocked**. All of the items in the order have been restocked. Replaced by \"UNFULFILLED\" status.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "PENDING_FULFILLMENT", + "description": "Displayed as **Pending fulfillment**. A request for fulfillment of some items awaits a response from the fulfillment service. Replaced by \"IN_PROGRESS\" status.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "OPEN", + "description": "Displayed as **Open**. None of the items in the order have been fulfilled. Replaced by \"UNFULFILLED\" status.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "IN_PROGRESS", + "description": "Displayed as **In progress**. Some of the items in the order have been fulfilled, or a request for fulfillment has been sent to the fulfillment service.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ON_HOLD", + "description": "Displayed as **On hold**. All of the unfulfilled items in this order are on hold.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "SCHEDULED", + "description": "Displayed as **Scheduled**. All of the unfulfilled items in this order are scheduled for fulfillment at later time.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "OrderLineItem", + "description": "Represents a single line in an order. There is one line item for each distinct product variant.", + "fields": [ + { + "name": "currentQuantity", + "description": "The number of entries associated to the line item minus the items that have been removed.", + "args": [], "type": { - "kind": "OBJECT", - "name": "CheckoutLineItemsAddPayload", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "checkoutLineItemsRemove", - "description": "Removes line items from an existing checkout.", - "args": [ - { - "name": "checkoutId", - "description": "The checkout on which to remove line items.", - "type": { + "name": "customAttributes", + "description": "List of custom attributes associated to the line item.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "ID", + "kind": "OBJECT", + "name": "Attribute", "ofType": null } - }, - "defaultValue": null - }, - { - "name": "lineItemIds", - "description": "Line item ids to remove.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - } - } - }, - "defaultValue": null + } } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutLineItemsRemovePayload", - "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "checkoutLineItemsReplace", - "description": "Sets a list of line items to a checkout.", - "args": [ - { - "name": "lineItems", - "description": "A list of line item objects to set on the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CheckoutLineItemInput", - "ofType": null - } - } - } - }, - "defaultValue": null - }, - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { + "name": "discountAllocations", + "description": "The discounts that have been allocated onto the order line item by discount applications.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "ID", + "kind": "OBJECT", + "name": "DiscountAllocation", "ofType": null } - }, - "defaultValue": null + } } - ], + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "discountedTotalPrice", + "description": "The total price of the line item, including discounts, and displayed in the presentment currency.", + "args": [], "type": { - "kind": "OBJECT", - "name": "CheckoutLineItemsReplacePayload", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "MoneyV2", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "checkoutLineItemsUpdate", - "description": "Updates line items on a checkout.", - "args": [ - { - "name": "lineItems", - "description": "Line items to update.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "CheckoutLineItemUpdateInput", - "ofType": null - } - } - } - }, - "defaultValue": null - }, - { - "name": "checkoutId", - "description": "The checkout on which to update line items.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null + "name": "originalTotalPrice", + "description": "The total price of the line item, not including any discounts. The total price is calculated using the original unit price multiplied by the quantity, and it's displayed in the presentment currency.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "MoneyV2", + "ofType": null } - ], + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "quantity", + "description": "The number of products variants associated to the line item.", + "args": [], "type": { - "kind": "OBJECT", - "name": "CheckoutLineItemsUpdatePayload", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "checkoutShippingAddressUpdateV2", - "description": "Updates the shipping address of an existing checkout.", - "args": [ - { - "name": "shippingAddress", - "description": "The shipping address to where the line items will be shipped.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "MailingAddressInput", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null + "name": "title", + "description": "The title of the product combined with title of the variant.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null } - ], + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "variant", + "description": "The product variant object associated to the line item.", + "args": [], "type": { "kind": "OBJECT", - "name": "CheckoutShippingAddressUpdateV2Payload", + "name": "ProductVariant", "ofType": null }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "OrderLineItemConnection", + "description": "An auto-generated type for paginating through multiple OrderLineItems.\n", + "fields": [ { - "name": "checkoutShippingLineUpdate", - "description": "Updates the shipping lines on an existing checkout.", - "args": [ - { - "name": "checkoutId", - "description": "The ID of the checkout.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "shippingRateHandle", - "description": "A unique identifier to a Checkout’s shipping provider, price, and title combination, enabling the customer to select the availableShippingRates.", - "type": { + "name": "edges", + "description": "A list of edges.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "OrderLineItemEdge", "ofType": null } - }, - "defaultValue": null + } } - ], - "type": { - "kind": "OBJECT", - "name": "CheckoutShippingLineUpdatePayload", - "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "customerAccessTokenCreate", - "description": "Creates a customer access token.\nThe customer access token is required to modify the customer object in any way.\n", - "args": [ - { - "name": "input", - "description": "The fields used to create a customer access token.", - "type": { + "name": "nodes", + "description": "A list of the nodes contained in OrderLineItemEdge.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "INPUT_OBJECT", - "name": "CustomerAccessTokenCreateInput", + "kind": "OBJECT", + "name": "OrderLineItem", "ofType": null } - }, - "defaultValue": null + } } - ], + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "pageInfo", + "description": "Information to aid in pagination.", + "args": [], "type": { - "kind": "OBJECT", - "name": "CustomerAccessTokenCreatePayload", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "PageInfo", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "OrderLineItemEdge", + "description": "An auto-generated type which holds one OrderLineItem and a cursor during pagination.\n", + "fields": [ + { + "name": "cursor", + "description": "A cursor for use in pagination.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "customerAccessTokenCreateWithMultipass", - "description": "Creates a customer access token using a\n[multipass token](https://shopify.dev/api/multipass) instead of email and\npassword. A customer record is created if the customer doesn't exist. If a customer\nrecord already exists but the record is disabled, then the customer record is enabled.\n", - "args": [ - { - "name": "multipassToken", - "description": "A valid [multipass token](https://shopify.dev/api/multipass) to be authenticated.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null + "name": "node", + "description": "The item at the end of OrderLineItemEdge.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "OrderLineItem", + "ofType": null } - ], + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "OrderSortKeys", + "description": "The set of valid sort keys for the Order query.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "PROCESSED_AT", + "description": "Sort by the `processed_at` value.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "TOTAL_PRICE", + "description": "Sort by the `total_price` value.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ID", + "description": "Sort by the `id` value.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "RELEVANCE", + "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "Page", + "description": "Shopify merchants can create pages to hold static HTML content. Each Page object represents a custom page on the online store.", + "fields": [ + { + "name": "body", + "description": "The description of the page, complete with HTML formatting.", + "args": [], "type": { - "kind": "OBJECT", - "name": "CustomerAccessTokenCreateWithMultipassPayload", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "HTML", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "customerAccessTokenDelete", - "description": "Permanently destroys a customer access token.", - "args": [ - { - "name": "customerAccessToken", - "description": "The access token used to identify the customer.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null + "name": "bodySummary", + "description": "Summary of the page body.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null } - ], + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "createdAt", + "description": "The timestamp of the page creation.", + "args": [], "type": { - "kind": "OBJECT", - "name": "CustomerAccessTokenDeletePayload", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "DateTime", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "customerAccessTokenRenew", - "description": "Renews a customer access token.\n\nAccess token renewal must happen *before* a token expires.\nIf a token has already expired, a new one should be created instead via `customerAccessTokenCreate`.\n", - "args": [ - { - "name": "customerAccessToken", - "description": "The access token used to identify the customer.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null + "name": "handle", + "description": "A human-friendly unique string for the page automatically generated from its title.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null } - ], + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "id", + "description": "A globally-unique ID.", + "args": [], "type": { - "kind": "OBJECT", - "name": "CustomerAccessTokenRenewPayload", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "customerActivate", - "description": "Activates a customer.", + "name": "metafield", + "description": "Returns a metafield found by namespace and key.", "args": [ { - "name": "id", - "description": "Specifies the customer to activate.", + "name": "namespace", + "description": "The container the metafield belongs to. If omitted, the app-reserved namespace will be used.", "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } + "kind": "SCALAR", + "name": "String", + "ofType": null }, "defaultValue": null }, { - "name": "input", - "description": "The fields used to activate a customer.", + "name": "key", + "description": "The identifier for the metafield.", "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "INPUT_OBJECT", - "name": "CustomerActivateInput", + "kind": "SCALAR", + "name": "String", "ofType": null } }, @@ -22816,430 +22737,656 @@ ], "type": { "kind": "OBJECT", - "name": "CustomerActivatePayload", + "name": "Metafield", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "customerActivateByUrl", - "description": "Activates a customer with the activation url received from `customerCreate`.", + "name": "metafields", + "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.", "args": [ { - "name": "activationUrl", - "description": "The customer activation URL.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "password", - "description": "A new password set during activation.", + "name": "identifiers", + "description": "The list of metafields to retrieve by namespace and key.\n\nThe input must not contain more than `250` values.", "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "HasMetafieldsIdentifier", + "ofType": null + } + } } }, "defaultValue": null } ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Metafield", + "ofType": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "onlineStoreUrl", + "description": "The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "URL", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "seo", + "description": "The page's SEO information.", + "args": [], "type": { "kind": "OBJECT", - "name": "CustomerActivateByUrlPayload", + "name": "SEO", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "customerAddressCreate", - "description": "Creates a new address for a customer.", - "args": [ - { - "name": "customerAccessToken", - "description": "The access token used to identify the customer.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "address", - "description": "The customer mailing address to create.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "MailingAddressInput", - "ofType": null - } - }, - "defaultValue": null + "name": "title", + "description": "The title of the page.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null } - ], + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "trackingParameters", + "description": "URL parameters to be added to a page URL to track the origin of on-site search traffic for [analytics reporting](https://help.shopify.com/manual/reports-and-analytics/shopify-reports/report-types/default-reports/behaviour-reports). Returns a result when accessed through the [search](https://shopify.dev/docs/api/storefront/current/queries/search) or [predictiveSearch](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries, otherwise returns null.", + "args": [], "type": { - "kind": "OBJECT", - "name": "CustomerAddressCreatePayload", + "kind": "SCALAR", + "name": "String", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "customerAddressDelete", - "description": "Permanently deletes the address of an existing customer.", - "args": [ - { - "name": "id", - "description": "Specifies the address to delete.", - "type": { + "name": "updatedAt", + "description": "The timestamp of the latest page update.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "DateTime", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "HasMetafields", + "ofType": null + }, + { + "kind": "INTERFACE", + "name": "Node", + "ofType": null + }, + { + "kind": "INTERFACE", + "name": "OnlineStorePublishable", + "ofType": null + }, + { + "kind": "INTERFACE", + "name": "Trackable", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "PageConnection", + "description": "An auto-generated type for paginating through multiple Pages.\n", + "fields": [ + { + "name": "edges", + "description": "A list of edges.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "ID", + "kind": "OBJECT", + "name": "PageEdge", "ofType": null } - }, - "defaultValue": null - }, - { - "name": "customerAccessToken", - "description": "The access token used to identify the customer.", - "type": { + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "nodes", + "description": "A list of the nodes contained in PageEdge.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "Page", "ofType": null } - }, - "defaultValue": null + } } - ], + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "pageInfo", + "description": "Information to aid in pagination.", + "args": [], "type": { - "kind": "OBJECT", - "name": "CustomerAddressDeletePayload", + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "PageInfo", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "PageEdge", + "description": "An auto-generated type which holds one Page and a cursor during pagination.\n", + "fields": [ + { + "name": "cursor", + "description": "A cursor for use in pagination.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "node", + "description": "The item at the end of PageEdge.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Page", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "PageInfo", + "description": "Returns information about pagination in a connection, in accordance with the\n[Relay specification](https://relay.dev/graphql/connections.htm#sec-undefined.PageInfo).\nFor more information, please read our [GraphQL Pagination Usage Guide](https://shopify.dev/api/usage/pagination-graphql).\n", + "fields": [ + { + "name": "endCursor", + "description": "The cursor corresponding to the last node in edges.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "customerAddressUpdate", - "description": "Updates the address of an existing customer.", - "args": [ - { - "name": "customerAccessToken", - "description": "The access token used to identify the customer.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "id", - "description": "Specifies the customer address to update.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "address", - "description": "The customer’s mailing address.", - "type": { + "name": "hasNextPage", + "description": "Whether there are more pages to fetch following the current page.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "hasPreviousPage", + "description": "Whether there are any pages prior to the current page.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "startCursor", + "description": "The cursor corresponding to the first node in edges.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "PageSortKeys", + "description": "The set of valid sort keys for the Page query.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "TITLE", + "description": "Sort by the `title` value.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "UPDATED_AT", + "description": "Sort by the `updated_at` value.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ID", + "description": "Sort by the `id` value.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "RELEVANCE", + "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "PaymentSettings", + "description": "Settings related to payments.", + "fields": [ + { + "name": "acceptedCardBrands", + "description": "List of the card brands which the shop accepts.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "INPUT_OBJECT", - "name": "MailingAddressInput", + "kind": "ENUM", + "name": "CardBrand", "ofType": null } - }, - "defaultValue": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "cardVaultUrl", + "description": "The url pointing to the endpoint to vault credit cards.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "URL", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "countryCode", + "description": "The country where the shop is located.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "CountryCode", + "ofType": null } - ], + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "currencyCode", + "description": "The three-letter code for the shop's primary currency.", + "args": [], "type": { - "kind": "OBJECT", - "name": "CustomerAddressUpdatePayload", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "CurrencyCode", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "customerCreate", - "description": "Creates a new customer.", - "args": [ - { - "name": "input", - "description": "The fields used to create a new customer.", - "type": { + "name": "enabledPresentmentCurrencies", + "description": "A list of enabled currencies (ISO 4217 format) that the shop accepts.\nMerchants can enable currencies from their Shopify Payments settings in the Shopify admin.\n", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "INPUT_OBJECT", - "name": "CustomerCreateInput", + "kind": "ENUM", + "name": "CurrencyCode", "ofType": null } - }, - "defaultValue": null + } } - ], + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "shopifyPaymentsAccountId", + "description": "The shop’s Shopify Payments account ID.", + "args": [], "type": { - "kind": "OBJECT", - "name": "CustomerCreatePayload", + "kind": "SCALAR", + "name": "String", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "customerDefaultAddressUpdate", - "description": "Updates the default address of an existing customer.", - "args": [ - { - "name": "customerAccessToken", - "description": "The access token used to identify the customer.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "addressId", - "description": "ID of the address to set as the new default for the customer.", - "type": { + "name": "supportedDigitalWallets", + "description": "List of the digital wallets which the shop supports.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "ID", + "kind": "ENUM", + "name": "DigitalWallet", "ofType": null } - }, - "defaultValue": null + } } - ], - "type": { - "kind": "OBJECT", - "name": "CustomerDefaultAddressUpdatePayload", - "ofType": null }, "isDeprecated": false, "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "PredictiveSearchLimitScope", + "description": "Decides the distribution of results.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "ALL", + "description": "Return results up to limit across all types.", + "isDeprecated": false, + "deprecationReason": null }, { - "name": "customerRecover", - "description": "Sends a reset password email to the customer. The reset password\nemail contains a reset password URL and token that you can pass to\nthe [`customerResetByUrl`](https://shopify.dev/api/storefront/latest/mutations/customerResetByUrl) or\n[`customerReset`](https://shopify.dev/api/storefront/latest/mutations/customerReset) mutation to reset the\ncustomer password.\n\nThis mutation is throttled by IP. With private access,\nyou can provide a [`Shopify-Storefront-Buyer-IP`](https://shopify.dev/api/usage/authentication#optional-ip-header) instead of the request IP.\nThe header is case-sensitive and must be sent as `Shopify-Storefront-Buyer-IP`.\n\nMake sure that the value provided to `Shopify-Storefront-Buyer-IP` is trusted. Unthrottled access to this\nmutation presents a security risk.\n", - "args": [ - { - "name": "email", - "description": "The email address of the customer to recover.", - "type": { + "name": "EACH", + "description": "Return results up to limit per type.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "PredictiveSearchResult", + "description": "A predictive search result represents a list of products, collections, pages, articles, and query suggestions\nthat matches the predictive search query.\n", + "fields": [ + { + "name": "articles", + "description": "The articles that match the search query.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "Article", "ofType": null } - }, - "defaultValue": null + } } - ], - "type": { - "kind": "OBJECT", - "name": "CustomerRecoverPayload", - "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "customerReset", - "description": "\"Resets a customer’s password with the token received from a reset password email. You can send a reset password email with the [`customerRecover`](https://shopify.dev/api/storefront/latest/mutations/customerRecover) mutation.\"\n", - "args": [ - { - "name": "id", - "description": "Specifies the customer to reset.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "input", - "description": "The fields used to reset a customer’s password.", - "type": { + "name": "collections", + "description": "The articles that match the search query.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "INPUT_OBJECT", - "name": "CustomerResetInput", + "kind": "OBJECT", + "name": "Collection", "ofType": null } - }, - "defaultValue": null + } } - ], - "type": { - "kind": "OBJECT", - "name": "CustomerResetPayload", - "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "customerResetByUrl", - "description": "\"Resets a customer’s password with the reset password URL received from a reset password email. You can send a reset password email with the [`customerRecover`](https://shopify.dev/api/storefront/latest/mutations/customerRecover) mutation.\"\n", - "args": [ - { - "name": "resetUrl", - "description": "The customer's reset password url.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "password", - "description": "New password that will be set as part of the reset password process.", - "type": { + "name": "pages", + "description": "The pages that match the search query.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "Page", "ofType": null } - }, - "defaultValue": null + } } - ], - "type": { - "kind": "OBJECT", - "name": "CustomerResetByUrlPayload", - "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "customerUpdate", - "description": "Updates an existing customer.", - "args": [ - { - "name": "customerAccessToken", - "description": "The access token used to identify the customer.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "customer", - "description": "The customer object input.", - "type": { + "name": "products", + "description": "The products that match the search query.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "INPUT_OBJECT", - "name": "CustomerUpdateInput", + "kind": "OBJECT", + "name": "Product", "ofType": null } - }, - "defaultValue": null + } } - ], - "type": { - "kind": "OBJECT", - "name": "CustomerUpdatePayload", - "ofType": null }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INTERFACE", - "name": "Node", - "description": "An object with an ID field to support global identification, in accordance with the\n[Relay specification](https://relay.dev/graphql/objectidentification.htm#sec-Node-Interface).\nThis interface is used by the [node](https://shopify.dev/api/admin-graphql/unstable/queries/node)\nand [nodes](https://shopify.dev/api/admin-graphql/unstable/queries/nodes) queries.\n", - "fields": [ + }, { - "name": "id", - "description": "A globally-unique ID.", + "name": "queries", + "description": "The query suggestions that are relevant to the search query.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "SearchQuerySuggestion", + "ofType": null + } + } } }, "isDeprecated": false, @@ -23249,182 +23396,126 @@ "inputFields": null, "interfaces": [], "enumValues": null, - "possibleTypes": [ - { - "kind": "OBJECT", - "name": "AppliedGiftCard", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Article", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Blog", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Cart", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "CartLine", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Checkout", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "CheckoutLineItem", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Collection", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Comment", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "ComponentizableCartLine", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "ExternalVideo", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "GenericFile", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Location", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "MailingAddress", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Market", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "MediaImage", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "MediaPresentation", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Menu", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "MenuItem", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Metaobject", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Model3d", - "ofType": null - }, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "PredictiveSearchType", + "description": "The types of search items to perform predictive search on.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ { - "kind": "OBJECT", - "name": "Order", - "ofType": null + "name": "COLLECTION", + "description": "Returns matching collections.", + "isDeprecated": false, + "deprecationReason": null }, { - "kind": "OBJECT", - "name": "Page", - "ofType": null + "name": "PRODUCT", + "description": "Returns matching products.", + "isDeprecated": false, + "deprecationReason": null }, { - "kind": "OBJECT", - "name": "Payment", - "ofType": null + "name": "PAGE", + "description": "Returns matching pages.", + "isDeprecated": false, + "deprecationReason": null }, { - "kind": "OBJECT", - "name": "Product", - "ofType": null + "name": "ARTICLE", + "description": "Returns matching articles.", + "isDeprecated": false, + "deprecationReason": null }, { - "kind": "OBJECT", - "name": "ProductOption", - "ofType": null - }, + "name": "QUERY", + "description": "Returns matching query strings.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "PreferenceDeliveryMethodType", + "description": "The preferred delivery methods such as shipping, local pickup or through pickup points.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ { - "kind": "OBJECT", - "name": "ProductVariant", - "ofType": null + "name": "SHIPPING", + "description": "A delivery method used to send items directly to a buyer’s specified address.", + "isDeprecated": false, + "deprecationReason": null }, { - "kind": "OBJECT", - "name": "Shop", - "ofType": null + "name": "PICK_UP", + "description": "A delivery method used to let buyers receive items directly from a specific location within an area.", + "isDeprecated": false, + "deprecationReason": null }, { - "kind": "OBJECT", - "name": "ShopPolicy", - "ofType": null - }, + "name": "PICKUP_POINT", + "description": "A delivery method used to let buyers collect purchases at designated locations like parcel lockers.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "PriceRangeFilter", + "description": "The input fields for a filter used to view a subset of products in a collection matching a specific price range.\n", + "fields": null, + "inputFields": [ { - "kind": "OBJECT", - "name": "UrlRedirect", - "ofType": null + "name": "min", + "description": "The minimum price in the range. Defaults to zero.", + "type": { + "kind": "SCALAR", + "name": "Float", + "ofType": null + }, + "defaultValue": "0.0" }, { - "kind": "OBJECT", - "name": "Video", - "ofType": null + "name": "max", + "description": "The maximum price in the range. Empty indicates no max price.", + "type": { + "kind": "SCALAR", + "name": "Float", + "ofType": null + }, + "defaultValue": null } - ] + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null }, { - "kind": "INTERFACE", - "name": "OnlineStorePublishable", - "description": "Represents a resource that can be published to the Online Store sales channel.", + "kind": "OBJECT", + "name": "PricingPercentageValue", + "description": "The value of the percentage pricing object.", "fields": [ { - "name": "onlineStoreUrl", - "description": "The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel.", + "name": "percentage", + "description": "The percentage value of the object.", "args": [], "type": { - "kind": "SCALAR", - "name": "URL", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Float", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null @@ -23433,90 +23524,111 @@ "inputFields": null, "interfaces": [], "enumValues": null, + "possibleTypes": null + }, + { + "kind": "UNION", + "name": "PricingValue", + "description": "The price value (fixed or percentage) for a discount application.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, "possibleTypes": [ { "kind": "OBJECT", - "name": "Article", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Blog", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Collection", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Metaobject", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "Page", + "name": "MoneyV2", "ofType": null }, { "kind": "OBJECT", - "name": "Product", + "name": "PricingPercentageValue", "ofType": null } ] }, { "kind": "OBJECT", - "name": "Order", - "description": "An order is a customer’s completed request to purchase one or more products from a shop. An order is created when a customer completes the checkout process, during which time they provides an email address, billing address and payment information.", + "name": "Product", + "description": "A product represents an individual item for sale in a Shopify store. Products are often physical, but they don't have to be.\nFor example, a digital download (such as a movie, music or ebook file) also\nqualifies as a product, as do services (such as equipment rental, work for hire,\ncustomization of another product or an extended warranty).\n", "fields": [ { - "name": "billingAddress", - "description": "The address associated with the payment method.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MailingAddress", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "cancelReason", - "description": "The reason for the order's cancellation. Returns `null` if the order wasn't canceled.", - "args": [], - "type": { - "kind": "ENUM", - "name": "OrderCancelReason", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "canceledAt", - "description": "The date and time when the order was canceled. Returns null if the order wasn't canceled.", + "name": "availableForSale", + "description": "Indicates if at least one product variant is available for sale.", "args": [], "type": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "currencyCode", - "description": "The code of the currency used for the payment.", - "args": [], + "name": "collections", + "description": "List of collections a product belongs to.", + "args": [ + { + "name": "first", + "description": "Returns up to the first `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "after", + "description": "Returns the elements that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "last", + "description": "Returns up to the last `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "before", + "description": "Returns the elements that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "reverse", + "description": "Reverse the order of the underlying list.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false" + } + ], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "ENUM", - "name": "CurrencyCode", + "kind": "OBJECT", + "name": "CollectionConnection", "ofType": null } }, @@ -23524,15 +23636,15 @@ "deprecationReason": null }, { - "name": "currentSubtotalPrice", - "description": "The subtotal of line items and their discounts, excluding line items that have been removed. Does not contain order-level discounts, duties, shipping costs, or shipping discounts. Taxes aren't included unless the order is a taxes-included order.", + "name": "compareAtPriceRange", + "description": "The compare at price of the product across all variants.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "OBJECT", - "name": "MoneyV2", + "name": "ProductPriceRange", "ofType": null } }, @@ -23540,27 +23652,42 @@ "deprecationReason": null }, { - "name": "currentTotalDuties", - "description": "The total cost of duties for the order, including refunds.", + "name": "createdAt", + "description": "The date and time when the product was created.", "args": [], "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "DateTime", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "currentTotalPrice", - "description": "The total amount of the order, including duties, taxes and discounts, minus amounts for line items that have been removed.", - "args": [], + "name": "description", + "description": "Stripped description of the product, single line with HTML tags removed.", + "args": [ + { + "name": "truncateAt", + "description": "Truncates string after the given length.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + } + ], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", + "kind": "SCALAR", + "name": "String", "ofType": null } }, @@ -23568,15 +23695,15 @@ "deprecationReason": null }, { - "name": "currentTotalTax", - "description": "The total of all taxes applied to the order, excluding taxes for returned line items.", + "name": "descriptionHtml", + "description": "The description of the product, complete with HTML formatting.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", + "kind": "SCALAR", + "name": "HTML", "ofType": null } }, @@ -23584,56 +23711,52 @@ "deprecationReason": null }, { - "name": "customAttributes", - "description": "A list of the custom attributes added to the order.", + "name": "featuredImage", + "description": "The featured image for the product.\n\nThis field is functionally equivalent to `images(first: 1)`.\n", "args": [], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Attribute", - "ofType": null - } - } - } + "kind": "OBJECT", + "name": "Image", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "customerLocale", - "description": "The locale code in which this specific order happened.", + "name": "handle", + "description": "A human-friendly unique string for the Product automatically generated from its title.\nThey are used by the Liquid templating language to refer to objects.\n", "args": [], "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "customerUrl", - "description": "The unique URL that the customer can use to access the order.", + "name": "id", + "description": "A globally-unique ID.", "args": [], "type": { - "kind": "SCALAR", - "name": "URL", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "discountApplications", - "description": "Discounts that have been applied on the order.", + "name": "images", + "description": "List of images associated with the product.", "args": [ { "name": "first", @@ -23684,6 +23807,16 @@ "ofType": null }, "defaultValue": "false" + }, + { + "name": "sortKey", + "description": "Sort the underlying list by the given key.", + "type": { + "kind": "ENUM", + "name": "ProductImageSortKeys", + "ofType": null + }, + "defaultValue": "POSITION" } ], "type": { @@ -23691,7 +23824,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "DiscountApplicationConnection", + "name": "ImageConnection", "ofType": null } }, @@ -23699,8 +23832,8 @@ "deprecationReason": null }, { - "name": "edited", - "description": "Whether the order has had any edits applied or not.", + "name": "isGiftCard", + "description": "Whether the product is a gift card.", "args": [], "type": { "kind": "NON_NULL", @@ -23715,64 +23848,8 @@ "deprecationReason": null }, { - "name": "email", - "description": "The customer's email address.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "financialStatus", - "description": "The financial status of the order.", - "args": [], - "type": { - "kind": "ENUM", - "name": "OrderFinancialStatus", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "fulfillmentStatus", - "description": "The fulfillment status for the order.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "OrderFulfillmentStatus", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique ID.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "lineItems", - "description": "List of the order’s line items.", + "name": "media", + "description": "The media associated with the product.", "args": [ { "name": "first", @@ -23823,6 +23900,16 @@ "ofType": null }, "defaultValue": "false" + }, + { + "name": "sortKey", + "description": "Sort the underlying list by the given key.", + "type": { + "kind": "ENUM", + "name": "ProductMediaSortKeys", + "ofType": null + }, + "defaultValue": "POSITION" } ], "type": { @@ -23830,7 +23917,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "OrderLineItemConnection", + "name": "MediaConnection", "ofType": null } }, @@ -23842,22 +23929,18 @@ "description": "Returns a metafield found by namespace and key.", "args": [ { - "name": "key", - "description": "The identifier for the metafield.", + "name": "namespace", + "description": "The container the metafield belongs to. If omitted, the app-reserved namespace will be used.", "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } + "kind": "SCALAR", + "name": "String", + "ofType": null }, "defaultValue": null }, { - "name": "namespace", - "description": "The container the metafield belongs to.", + "name": "key", + "description": "The identifier for the metafield.", "type": { "kind": "NON_NULL", "name": null, @@ -23884,7 +23967,7 @@ "args": [ { "name": "identifiers", - "description": "The list of metafields to retrieve by namespace and key.", + "description": "The list of metafields to retrieve by namespace and key.\n\nThe input must not contain more than `250` values.", "type": { "kind": "NON_NULL", "name": null, @@ -23922,109 +24005,32 @@ "deprecationReason": null }, { - "name": "name", - "description": "Unique identifier for the order that appears on the order.\nFor example, _#1000_ or _Store1001.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "orderNumber", - "description": "A unique numeric identifier for the order for use by shop owner and customer.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "originalTotalDuties", - "description": "The total cost of duties charged at checkout.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "originalTotalPrice", - "description": "The total price of the order before any applied edits.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "phone", - "description": "The customer's phone number for receiving SMS notifications.", + "name": "onlineStoreUrl", + "description": "The URL used for viewing the resource on the shop's Online Store. Returns\n`null` if the resource is currently not published to the Online Store sales channel.\n", "args": [], "type": { "kind": "SCALAR", - "name": "String", + "name": "URL", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "processedAt", - "description": "The date and time when the order was imported.\nThis value can be set to dates in the past when importing from other systems.\nIf no value is provided, it will be auto-generated based on current date and time.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null + "name": "options", + "description": "List of product options.", + "args": [ + { + "name": "first", + "description": "Truncate the array result to this size.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "shippingAddress", - "description": "The address to where the order will be shipped.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "MailingAddress", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "shippingDiscountAllocations", - "description": "The discounts that have been allocated onto the shipping line by discount applications.\n", - "args": [], + ], "type": { "kind": "NON_NULL", "name": null, @@ -24036,7 +24042,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "DiscountAllocation", + "name": "ProductOption", "ofType": null } } @@ -24046,15 +24052,31 @@ "deprecationReason": null }, { - "name": "statusUrl", - "description": "The unique URL for the order's status page.", + "name": "priceRange", + "description": "The price range.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "ProductPriceRange", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "productType", + "description": "A categorization that a product can be tagged with, commonly used for filtering and searching.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "URL", + "name": "String", "ofType": null } }, @@ -24062,70 +24084,114 @@ "deprecationReason": null }, { - "name": "subtotalPrice", - "description": "Price of the order before shipping and taxes.", + "name": "publishedAt", + "description": "The date and time when the product was published to the channel.", "args": [], "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "DateTime", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "subtotalPriceV2", - "description": "Price of the order before duties, shipping and taxes.", + "name": "requiresSellingPlan", + "description": "Whether the product can only be purchased with a selling plan.", "args": [], "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } }, - "isDeprecated": true, - "deprecationReason": "Use `subtotalPrice` instead." + "isDeprecated": false, + "deprecationReason": null }, { - "name": "successfulFulfillments", - "description": "List of the order’s successful fulfillments.", + "name": "sellingPlanGroups", + "description": "A list of a product's available selling plan groups. A selling plan group represents a selling method. For example, 'Subscribe and save' is a selling method where customers pay for goods or services per delivery. A selling plan group contains individual selling plans.", "args": [ { "name": "first", - "description": "Truncate the array result to this size.", + "description": "Returns up to the first `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "after", + "description": "Returns the elements that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "last", + "description": "Returns up to the last `n` elements from the list.", "type": { "kind": "SCALAR", "name": "Int", "ofType": null }, "defaultValue": null + }, + { + "name": "before", + "description": "Returns the elements that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "reverse", + "description": "Reverse the order of the underlying list.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false" } ], "type": { - "kind": "LIST", + "kind": "NON_NULL", "name": null, "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Fulfillment", - "ofType": null - } + "kind": "OBJECT", + "name": "SellingPlanGroupConnection", + "ofType": null } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "totalPrice", - "description": "The sum of all the prices of all the items in the order, duties, taxes and discounts included (must be positive).", + "name": "seo", + "description": "The product's SEO information.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "OBJECT", - "name": "MoneyV2", + "name": "SEO", "ofType": null } }, @@ -24133,31 +24199,39 @@ "deprecationReason": null }, { - "name": "totalPriceV2", - "description": "The sum of all the prices of all the items in the order, duties, taxes and discounts included (must be positive).", + "name": "tags", + "description": "A comma separated list of tags that have been added to the product.\nAdditional access scope required for private apps: unauthenticated_read_product_tags.\n", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } } }, - "isDeprecated": true, - "deprecationReason": "Use `totalPrice` instead." + "isDeprecated": false, + "deprecationReason": null }, { - "name": "totalRefunded", - "description": "The total amount that has been refunded.", + "name": "title", + "description": "The product’s title.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", + "kind": "SCALAR", + "name": "String", "ofType": null } }, @@ -24165,76 +24239,192 @@ "deprecationReason": null }, { - "name": "totalRefundedV2", - "description": "The total amount that has been refunded.", + "name": "totalInventory", + "description": "The total quantity of inventory in stock for this Product.", "args": [], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } + "kind": "SCALAR", + "name": "Int", + "ofType": null }, - "isDeprecated": true, - "deprecationReason": "Use `totalRefunded` instead." + "isDeprecated": false, + "deprecationReason": null }, { - "name": "totalShippingPrice", - "description": "The total cost of shipping.", + "name": "trackingParameters", + "description": "URL parameters to be added to a page URL to track the origin of on-site search traffic for [analytics reporting](https://help.shopify.com/manual/reports-and-analytics/shopify-reports/report-types/default-reports/behaviour-reports). Returns a result when accessed through the [search](https://shopify.dev/docs/api/storefront/current/queries/search) or [predictiveSearch](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries, otherwise returns null.", "args": [], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } + "kind": "SCALAR", + "name": "String", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "totalShippingPriceV2", - "description": "The total cost of shipping.", + "name": "updatedAt", + "description": "The date and time when the product was last modified.\nA product's `updatedAt` value can change for different reasons. For example, if an order\nis placed for a product that has inventory tracking set up, then the inventory adjustment\nis counted as an update.\n", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", + "kind": "SCALAR", + "name": "DateTime", "ofType": null } }, - "isDeprecated": true, - "deprecationReason": "Use `totalShippingPrice` instead." + "isDeprecated": false, + "deprecationReason": null }, { - "name": "totalTax", - "description": "The total cost of taxes.", - "args": [], + "name": "variantBySelectedOptions", + "description": "Find a product’s variant based on its selected options.\nThis is useful for converting a user’s selection of product options into a single matching variant.\nIf there is not a variant for the selected options, `null` will be returned.\n", + "args": [ + { + "name": "selectedOptions", + "description": "The input fields used for a selected option.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "SelectedOptionInput", + "ofType": null + } + } + } + }, + "defaultValue": null + }, + { + "name": "ignoreUnknownOptions", + "description": "Whether to ignore unknown product options.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false" + }, + { + "name": "caseInsensitiveMatch", + "description": "Whether to perform case insensitive match on option names and values.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false" + } + ], "type": { "kind": "OBJECT", - "name": "MoneyV2", + "name": "ProductVariant", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "totalTaxV2", - "description": "The total cost of taxes.", + "name": "variants", + "description": "List of the product’s variants.", + "args": [ + { + "name": "first", + "description": "Returns up to the first `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "after", + "description": "Returns the elements that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "last", + "description": "Returns up to the last `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "before", + "description": "Returns the elements that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "reverse", + "description": "Reverse the order of the underlying list.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false" + }, + { + "name": "sortKey", + "description": "Sort the underlying list by the given key.", + "type": { + "kind": "ENUM", + "name": "ProductVariantSortKeys", + "ofType": null + }, + "defaultValue": "POSITION" + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "ProductVariantConnection", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "vendor", + "description": "The product’s vendor name.", "args": [], "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } }, - "isDeprecated": true, - "deprecationReason": "Use `totalTax` instead." + "isDeprecated": false, + "deprecationReason": null } ], "inputFields": null, @@ -24248,6 +24438,16 @@ "kind": "INTERFACE", "name": "Node", "ofType": null + }, + { + "kind": "INTERFACE", + "name": "OnlineStorePublishable", + "ofType": null + }, + { + "kind": "INTERFACE", + "name": "Trackable", + "ofType": null } ], "enumValues": null, @@ -24255,45 +24455,57 @@ }, { "kind": "ENUM", - "name": "OrderCancelReason", - "description": "Represents the reason for the order's cancellation.", + "name": "ProductCollectionSortKeys", + "description": "The set of valid sort keys for the ProductCollection query.", "fields": null, "inputFields": null, "interfaces": null, "enumValues": [ { - "name": "CUSTOMER", - "description": "The customer wanted to cancel the order.", + "name": "TITLE", + "description": "Sort by the `title` value.", "isDeprecated": false, "deprecationReason": null }, { - "name": "FRAUD", - "description": "The order was fraudulent.", + "name": "PRICE", + "description": "Sort by the `price` value.", "isDeprecated": false, "deprecationReason": null }, { - "name": "INVENTORY", - "description": "There was insufficient inventory.", + "name": "BEST_SELLING", + "description": "Sort by the `best-selling` value.", "isDeprecated": false, "deprecationReason": null }, { - "name": "DECLINED", - "description": "Payment was declined.", + "name": "CREATED", + "description": "Sort by the `created` value.", "isDeprecated": false, "deprecationReason": null }, { - "name": "STAFF", - "description": "Staff made an error.", + "name": "ID", + "description": "Sort by the `id` value.", "isDeprecated": false, "deprecationReason": null }, { - "name": "OTHER", - "description": "The order was canceled for an unlisted reason.", + "name": "MANUAL", + "description": "Sort by the `manual` value.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "COLLECTION_DEFAULT", + "description": "Sort by the `collection-default` value.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "RELEVANCE", + "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", "isDeprecated": false, "deprecationReason": null } @@ -24302,8 +24514,8 @@ }, { "kind": "OBJECT", - "name": "OrderConnection", - "description": "An auto-generated type for paginating through multiple Orders.\n", + "name": "ProductConnection", + "description": "An auto-generated type for paginating through multiple Products.\n", "fields": [ { "name": "edges", @@ -24320,7 +24532,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "OrderEdge", + "name": "ProductEdge", "ofType": null } } @@ -24330,8 +24542,8 @@ "deprecationReason": null }, { - "name": "nodes", - "description": "A list of the nodes contained in OrderEdge.", + "name": "filters", + "description": "A list of available filters.", "args": [], "type": { "kind": "NON_NULL", @@ -24344,7 +24556,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "Order", + "name": "Filter", "ofType": null } } @@ -24354,31 +24566,39 @@ "deprecationReason": null }, { - "name": "pageInfo", - "description": "Information to aid in pagination.", + "name": "nodes", + "description": "A list of the nodes contained in ProductEdge.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Product", + "ofType": null + } + } } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "totalCount", - "description": "The total count of Orders.", + "name": "pageInfo", + "description": "Information to aid in pagination.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "UnsignedInt64", + "kind": "OBJECT", + "name": "PageInfo", "ofType": null } }, @@ -24393,8 +24613,8 @@ }, { "kind": "OBJECT", - "name": "OrderEdge", - "description": "An auto-generated type which holds one Order and a cursor during pagination.\n", + "name": "ProductEdge", + "description": "An auto-generated type which holds one Product and a cursor during pagination.\n", "fields": [ { "name": "cursor", @@ -24414,14 +24634,14 @@ }, { "name": "node", - "description": "The item at the end of OrderEdge.", + "description": "The item at the end of ProductEdge.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "OBJECT", - "name": "Order", + "name": "Product", "ofType": null } }, @@ -24429,58 +24649,131 @@ "deprecationReason": null } ], - "inputFields": null, - "interfaces": [], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "ProductFilter", + "description": "The input fields for a filter used to view a subset of products in a collection.\nBy default, the `available` and `price` filters are enabled. Filters are customized with the Shopify Search & Discovery app.\nLearn more about [customizing storefront filtering](https://help.shopify.com/manual/online-store/themes/customizing-themes/storefront-filters).\n", + "fields": null, + "inputFields": [ + { + "name": "available", + "description": "Filter on if the product is available for sale.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "variantOption", + "description": "A variant option to filter on.", + "type": { + "kind": "INPUT_OBJECT", + "name": "VariantOptionFilter", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "productType", + "description": "The product type to filter on.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "productVendor", + "description": "The product vendor to filter on.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "price", + "description": "A range of prices to filter with-in.", + "type": { + "kind": "INPUT_OBJECT", + "name": "PriceRangeFilter", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "productMetafield", + "description": "A product metafield to filter on.", + "type": { + "kind": "INPUT_OBJECT", + "name": "MetafieldFilter", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "variantMetafield", + "description": "A variant metafield to filter on.", + "type": { + "kind": "INPUT_OBJECT", + "name": "MetafieldFilter", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "tag", + "description": "A product tag to filter on.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + } + ], + "interfaces": null, "enumValues": null, "possibleTypes": null }, { "kind": "ENUM", - "name": "OrderFinancialStatus", - "description": "Represents the order's current financial status.", + "name": "ProductImageSortKeys", + "description": "The set of valid sort keys for the ProductImage query.", "fields": null, "inputFields": null, "interfaces": null, "enumValues": [ { - "name": "PENDING", - "description": "Displayed as **Pending**.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AUTHORIZED", - "description": "Displayed as **Authorized**.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PARTIALLY_PAID", - "description": "Displayed as **Partially paid**.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PARTIALLY_REFUNDED", - "description": "Displayed as **Partially refunded**.", + "name": "CREATED_AT", + "description": "Sort by the `created_at` value.", "isDeprecated": false, "deprecationReason": null }, { - "name": "VOIDED", - "description": "Displayed as **Voided**.", + "name": "POSITION", + "description": "Sort by the `position` value.", "isDeprecated": false, "deprecationReason": null }, { - "name": "PAID", - "description": "Displayed as **Paid**.", + "name": "ID", + "description": "Sort by the `id` value.", "isDeprecated": false, "deprecationReason": null }, { - "name": "REFUNDED", - "description": "Displayed as **Refunded**.", + "name": "RELEVANCE", + "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", "isDeprecated": false, "deprecationReason": null } @@ -24489,63 +24782,27 @@ }, { "kind": "ENUM", - "name": "OrderFulfillmentStatus", - "description": "Represents the order's aggregated fulfillment status for display purposes.", + "name": "ProductMediaSortKeys", + "description": "The set of valid sort keys for the ProductMedia query.", "fields": null, "inputFields": null, "interfaces": null, "enumValues": [ { - "name": "UNFULFILLED", - "description": "Displayed as **Unfulfilled**. None of the items in the order have been fulfilled.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PARTIALLY_FULFILLED", - "description": "Displayed as **Partially fulfilled**. Some of the items in the order have been fulfilled.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "FULFILLED", - "description": "Displayed as **Fulfilled**. All of the items in the order have been fulfilled.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RESTOCKED", - "description": "Displayed as **Restocked**. All of the items in the order have been restocked. Replaced by \"UNFULFILLED\" status.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PENDING_FULFILLMENT", - "description": "Displayed as **Pending fulfillment**. A request for fulfillment of some items awaits a response from the fulfillment service. Replaced by \"IN_PROGRESS\" status.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "OPEN", - "description": "Displayed as **Open**. None of the items in the order have been fulfilled. Replaced by \"UNFULFILLED\" status.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "IN_PROGRESS", - "description": "Displayed as **In progress**. Some of the items in the order have been fulfilled, or a request for fulfillment has been sent to the fulfillment service.", + "name": "POSITION", + "description": "Sort by the `position` value.", "isDeprecated": false, "deprecationReason": null }, { - "name": "ON_HOLD", - "description": "Displayed as **On hold**. All of the unfulfilled items in this order are on hold.", + "name": "ID", + "description": "Sort by the `id` value.", "isDeprecated": false, "deprecationReason": null }, { - "name": "SCHEDULED", - "description": "Displayed as **Scheduled**. All of the unfulfilled items in this order are scheduled for fulfillment at later time.", + "name": "RELEVANCE", + "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", "isDeprecated": false, "deprecationReason": null } @@ -24554,19 +24811,19 @@ }, { "kind": "OBJECT", - "name": "OrderLineItem", - "description": "Represents a single line in an order. There is one line item for each distinct product variant.", + "name": "ProductOption", + "description": "Product property names like \"Size\", \"Color\", and \"Material\" that the customers can select.\nVariants are selected based on permutations of these options.\n255 characters limit each.\n", "fields": [ { - "name": "currentQuantity", - "description": "The number of entries associated to the line item minus the items that have been removed.", + "name": "id", + "description": "A globally-unique ID.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "Int", + "name": "ID", "ofType": null } }, @@ -24574,32 +24831,24 @@ "deprecationReason": null }, { - "name": "customAttributes", - "description": "List of custom attributes associated to the line item.", + "name": "name", + "description": "The product option’s name.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Attribute", - "ofType": null - } - } + "kind": "SCALAR", + "name": "String", + "ofType": null } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "discountAllocations", - "description": "The discounts that have been allocated onto the order line item by discount applications.", + "name": "optionValues", + "description": "The corresponding option value to the product option.", "args": [], "type": { "kind": "NON_NULL", @@ -24612,7 +24861,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "DiscountAllocation", + "name": "ProductOptionValue", "ofType": null } } @@ -24622,47 +24871,56 @@ "deprecationReason": null }, { - "name": "discountedTotalPrice", - "description": "The total price of the line item, including discounts, and displayed in the presentment currency.", + "name": "values", + "description": "The corresponding value to the product option name.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } } }, - "isDeprecated": false, - "deprecationReason": null - }, + "isDeprecated": true, + "deprecationReason": "Use `optionValues` instead." + } + ], + "inputFields": null, + "interfaces": [ { - "name": "originalTotalPrice", - "description": "The total price of the line item, not including any discounts. The total price is calculated using the original unit price multiplied by the quantity, and it's displayed in the presentment currency.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, + "kind": "INTERFACE", + "name": "Node", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ProductOptionValue", + "description": "The product option value names. For example, \"Red\", \"Blue\", and \"Green\" for a \"Color\" option.\n", + "fields": [ { - "name": "quantity", - "description": "The number of products variants associated to the line item.", + "name": "id", + "description": "A globally-unique ID.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "Int", + "name": "ID", "ofType": null } }, @@ -24670,8 +24928,8 @@ "deprecationReason": null }, { - "name": "title", - "description": "The title of the product combined with title of the variant.", + "name": "name", + "description": "The name of the product option value.", "args": [], "type": { "kind": "NON_NULL", @@ -24686,12 +24944,12 @@ "deprecationReason": null }, { - "name": "variant", - "description": "The product variant object associated to the line item.", + "name": "swatch", + "description": "The swatch of the product option value.", "args": [], "type": { "kind": "OBJECT", - "name": "ProductVariant", + "name": "ProductOptionValueSwatch", "ofType": null }, "isDeprecated": false, @@ -24699,75 +24957,41 @@ } ], "inputFields": null, - "interfaces": [], + "interfaces": [ + { + "kind": "INTERFACE", + "name": "Node", + "ofType": null + } + ], "enumValues": null, "possibleTypes": null }, { "kind": "OBJECT", - "name": "OrderLineItemConnection", - "description": "An auto-generated type for paginating through multiple OrderLineItems.\n", + "name": "ProductOptionValueSwatch", + "description": "The product option value swatch.\n", "fields": [ { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "OrderLineItemEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in OrderLineItemEdge.", + "name": "color", + "description": "The swatch color.", "args": [], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "OrderLineItem", - "ofType": null - } - } - } + "kind": "SCALAR", + "name": "Color", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "pageInfo", - "description": "Information to aid in pagination.", + "name": "image", + "description": "The swatch image.", "args": [], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } + "kind": "INTERFACE", + "name": "Media", + "ofType": null }, "isDeprecated": false, "deprecationReason": null @@ -24780,19 +25004,19 @@ }, { "kind": "OBJECT", - "name": "OrderLineItemEdge", - "description": "An auto-generated type which holds one OrderLineItem and a cursor during pagination.\n", + "name": "ProductPriceRange", + "description": "The price range of the product.", "fields": [ { - "name": "cursor", - "description": "A cursor for use in pagination.", + "name": "maxVariantPrice", + "description": "The highest variant's price.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "MoneyV2", "ofType": null } }, @@ -24800,15 +25024,15 @@ "deprecationReason": null }, { - "name": "node", - "description": "The item at the end of OrderLineItemEdge.", + "name": "minVariantPrice", + "description": "The lowest variant's price.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "OBJECT", - "name": "OrderLineItem", + "name": "MoneyV2", "ofType": null } }, @@ -24823,21 +25047,74 @@ }, { "kind": "ENUM", - "name": "OrderSortKeys", - "description": "The set of valid sort keys for the Order query.", + "name": "ProductRecommendationIntent", + "description": "The recommendation intent that is used to generate product recommendations.\nYou can use intent to generate product recommendations according to different strategies.\n", "fields": null, "inputFields": null, "interfaces": null, "enumValues": [ { - "name": "PROCESSED_AT", - "description": "Sort by the `processed_at` value.", + "name": "RELATED", + "description": "Offer customers a mix of products that are similar or complementary to a product for which recommendations are to be fetched. An example is substitutable products that display in a You may also like section.", "isDeprecated": false, "deprecationReason": null }, { - "name": "TOTAL_PRICE", - "description": "Sort by the `total_price` value.", + "name": "COMPLEMENTARY", + "description": "Offer customers products that are complementary to a product for which recommendations are to be fetched. An example is add-on products that display in a Pair it with section.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "ProductSortKeys", + "description": "The set of valid sort keys for the Product query.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "TITLE", + "description": "Sort by the `title` value.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "PRODUCT_TYPE", + "description": "Sort by the `product_type` value.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "VENDOR", + "description": "Sort by the `vendor` value.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "UPDATED_AT", + "description": "Sort by the `updated_at` value.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "CREATED_AT", + "description": "Sort by the `created_at` value.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "BEST_SELLING", + "description": "Sort by the `best_selling` value.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "PRICE", + "description": "Sort by the `price` value.", "isDeprecated": false, "deprecationReason": null }, @@ -24858,19 +25135,19 @@ }, { "kind": "OBJECT", - "name": "Page", - "description": "Shopify merchants can create pages to hold static HTML content. Each Page object represents a custom page on the online store.", + "name": "ProductVariant", + "description": "A product variant represents a different version of a product, such as differing sizes or differing colors.\n", "fields": [ { - "name": "body", - "description": "The description of the page, complete with HTML formatting.", + "name": "availableForSale", + "description": "Indicates if the product variant is available for sale.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "HTML", + "name": "Boolean", "ofType": null } }, @@ -24878,15 +25155,92 @@ "deprecationReason": null }, { - "name": "bodySummary", - "description": "Summary of the page body.", + "name": "barcode", + "description": "The barcode (for example, ISBN, UPC, or GTIN) associated with the variant.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "compareAtPrice", + "description": "The compare at price of the variant. This can be used to mark a variant as on sale, when `compareAtPrice` is higher than `price`.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "MoneyV2", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "compareAtPriceV2", + "description": "The compare at price of the variant. This can be used to mark a variant as on sale, when `compareAtPriceV2` is higher than `priceV2`.", "args": [], + "type": { + "kind": "OBJECT", + "name": "MoneyV2", + "ofType": null + }, + "isDeprecated": true, + "deprecationReason": "Use `compareAtPrice` instead." + }, + { + "name": "components", + "description": "List of bundles components included in the variant considering only fixed bundles.\n", + "args": [ + { + "name": "first", + "description": "Returns up to the first `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "after", + "description": "Returns the elements that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "last", + "description": "Returns up to the last `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "before", + "description": "Returns the elements that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + } + ], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "ProductVariantComponentConnection", "ofType": null } }, @@ -24894,15 +25248,15 @@ "deprecationReason": null }, { - "name": "createdAt", - "description": "The timestamp of the page creation.", + "name": "currentlyNotInStock", + "description": "Whether a product is out of stock but still available for purchase (used for backorders).", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "DateTime", + "name": "Boolean", "ofType": null } }, @@ -24910,15 +25264,56 @@ "deprecationReason": null }, { - "name": "handle", - "description": "A human-friendly unique string for the page automatically generated from its title.", - "args": [], + "name": "groupedBy", + "description": "List of bundles that include this variant considering only fixed bundles.\n", + "args": [ + { + "name": "first", + "description": "Returns up to the first `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "after", + "description": "Returns the elements that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "last", + "description": "Returns up to the last `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "before", + "description": "Returns the elements that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + } + ], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "ProductVariantConnection", "ofType": null } }, @@ -24942,26 +25337,34 @@ "deprecationReason": null }, { - "name": "metafield", - "description": "Returns a metafield found by namespace and key.", - "args": [ - { - "name": "key", - "description": "The identifier for the metafield.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } + "name": "image", + "description": "Image associated with the product variant. This field falls back to the product image if no image is available.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "Image", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "metafield", + "description": "Returns a metafield found by namespace and key.", + "args": [ + { + "name": "namespace", + "description": "The container the metafield belongs to. If omitted, the app-reserved namespace will be used.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null }, "defaultValue": null }, { - "name": "namespace", - "description": "The container the metafield belongs to.", + "name": "key", + "description": "The identifier for the metafield.", "type": { "kind": "NON_NULL", "name": null, @@ -24988,7 +25391,7 @@ "args": [ { "name": "identifiers", - "description": "The list of metafields to retrieve by namespace and key.", + "description": "The list of metafields to retrieve by namespace and key.\n\nThe input must not contain more than `250` values.", "type": { "kind": "NON_NULL", "name": null, @@ -25026,39 +25429,15 @@ "deprecationReason": null }, { - "name": "onlineStoreUrl", - "description": "The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "URL", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "seo", - "description": "The page's SEO information.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "SEO", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "title", - "description": "The title of the page.", + "name": "price", + "description": "The product variant’s price.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "MoneyV2", "ofType": null } }, @@ -25066,150 +25445,100 @@ "deprecationReason": null }, { - "name": "trackingParameters", - "description": "A URL parameters to be added to a page URL when it is linked from a GraphQL result. This allows for tracking the origin of the traffic.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "updatedAt", - "description": "The timestamp of the latest page update.", + "name": "priceV2", + "description": "The product variant’s price.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "DateTime", + "kind": "OBJECT", + "name": "MoneyV2", "ofType": null } }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "HasMetafields", - "ofType": null - }, - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - }, - { - "kind": "INTERFACE", - "name": "OnlineStorePublishable", - "ofType": null + "isDeprecated": true, + "deprecationReason": "Use `price` instead." }, { - "kind": "INTERFACE", - "name": "Trackable", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "PageConnection", - "description": "An auto-generated type for paginating through multiple Pages.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", + "name": "product", + "description": "The product object that the product variant belongs to.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageEdge", - "ofType": null - } - } + "kind": "OBJECT", + "name": "Product", + "ofType": null } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "nodes", - "description": "A list of the nodes contained in PageEdge.", + "name": "quantityAvailable", + "description": "The total sellable quantity of the variant for online sales channels.", "args": [], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Page", - "ofType": null - } - } - } + "kind": "SCALAR", + "name": "Int", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null + "name": "quantityPriceBreaks", + "description": "A list of quantity breaks for the product variant.", + "args": [ + { + "name": "first", + "description": "Returns up to the first `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "after", + "description": "Returns the elements that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "last", + "description": "Returns up to the last `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "before", + "description": "Returns the elements that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "PageEdge", - "description": "An auto-generated type which holds one Page and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], + ], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "QuantityPriceBreakConnection", "ofType": null } }, @@ -25217,47 +25546,24 @@ "deprecationReason": null }, { - "name": "node", - "description": "The item at the end of PageEdge.", + "name": "quantityRule", + "description": "The quantity rule for the product variant in a given context.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "OBJECT", - "name": "Page", + "name": "QuantityRule", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "PageInfo", - "description": "Returns information about pagination in a connection, in accordance with the\n[Relay specification](https://relay.dev/graphql/connections.htm#sec-undefined.PageInfo).\nFor more information, please read our [GraphQL Pagination Usage Guide](https://shopify.dev/api/usage/pagination-graphql).\n", - "fields": [ - { - "name": "endCursor", - "description": "The cursor corresponding to the last node in edges.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null }, { - "name": "hasNextPage", - "description": "Whether there are more pages to fetch following the current page.", + "name": "requiresComponents", + "description": "Whether a product variant requires components. The default value is `false`.\nIf `true`, then the product variant can only be purchased as a parent bundle with components.\n", "args": [], "type": { "kind": "NON_NULL", @@ -25272,8 +25578,8 @@ "deprecationReason": null }, { - "name": "hasPreviousPage", - "description": "Whether there are any pages prior to the current page.", + "name": "requiresShipping", + "description": "Whether a customer needs to provide a shipping address when placing an order for the product variant.", "args": [], "type": { "kind": "NON_NULL", @@ -25288,117 +25594,179 @@ "deprecationReason": null }, { - "name": "startCursor", - "description": "The cursor corresponding to the first node in edges.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "PageSortKeys", - "description": "The set of valid sort keys for the Page query.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "ID", - "description": "Sort by the `id` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "UPDATED_AT", - "description": "Sort by the `updated_at` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RELEVANCE", - "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TITLE", - "description": "Sort by the `title` value.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "Payment", - "description": "A payment applied to a checkout.", - "fields": [ - { - "name": "amount", - "description": "The amount of the payment.", + "name": "selectedOptions", + "description": "List of product options applied to the variant.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "SelectedOption", + "ofType": null + } + } } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "amountV2", - "description": "The amount of the payment.", - "args": [], + "name": "sellingPlanAllocations", + "description": "Represents an association between a variant and a selling plan. Selling plan allocations describe which selling plans are available for each variant, and what their impact is on pricing.", + "args": [ + { + "name": "first", + "description": "Returns up to the first `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "after", + "description": "Returns the elements that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "last", + "description": "Returns up to the last `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "before", + "description": "Returns the elements that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "reverse", + "description": "Reverse the order of the underlying list.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false" + } + ], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "OBJECT", - "name": "MoneyV2", + "name": "SellingPlanAllocationConnection", "ofType": null } }, - "isDeprecated": true, - "deprecationReason": "Use `amount` instead." + "isDeprecated": false, + "deprecationReason": null }, { - "name": "billingAddress", - "description": "The billing address for the payment.", + "name": "sku", + "description": "The SKU (stock keeping unit) associated with the variant.", "args": [], "type": { - "kind": "OBJECT", - "name": "MailingAddress", + "kind": "SCALAR", + "name": "String", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "checkout", - "description": "The checkout to which the payment belongs.", - "args": [], + "name": "storeAvailability", + "description": "The in-store pickup availability of this variant by location.", + "args": [ + { + "name": "near", + "description": "Used to sort results based on proximity to the provided location.", + "type": { + "kind": "INPUT_OBJECT", + "name": "GeoCoordinateInput", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "first", + "description": "Returns up to the first `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "after", + "description": "Returns the elements that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "last", + "description": "Returns up to the last `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "before", + "description": "Returns the elements that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "reverse", + "description": "Reverse the order of the underlying list.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false" + } + ], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "OBJECT", - "name": "Checkout", + "name": "StoreAvailabilityConnection", "ofType": null } }, @@ -25406,39 +25774,31 @@ "deprecationReason": null }, { - "name": "creditCard", - "description": "The credit card used for the payment in the case of direct payments.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "CreditCard", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "errorMessage", - "description": "A message describing a processing error during asynchronous processing.", + "name": "taxable", + "description": "Whether tax is charged when the product variant is sold.", "args": [], "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "id", - "description": "A globally-unique ID.", + "name": "title", + "description": "The product variant’s title.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "ID", + "name": "String", "ofType": null } }, @@ -25446,69 +25806,53 @@ "deprecationReason": null }, { - "name": "idempotencyKey", - "description": "A client-side generated token to identify a payment and perform idempotent operations.\nFor more information, refer to\n[Idempotent requests](https://shopify.dev/api/usage/idempotent-requests).\n", + "name": "unitPrice", + "description": "The unit price value for the variant based on the variant's measurement.", "args": [], "type": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "MoneyV2", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "nextActionUrl", - "description": "The URL where the customer needs to be redirected so they can complete the 3D Secure payment flow.", + "name": "unitPriceMeasurement", + "description": "The unit price measurement for the variant.", "args": [], "type": { - "kind": "SCALAR", - "name": "URL", + "kind": "OBJECT", + "name": "UnitPriceMeasurement", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "ready", - "description": "Whether the payment is still processing asynchronously.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "test", - "description": "A flag to indicate if the payment is to be done in test mode for gateways that support it.", + "name": "weight", + "description": "The weight of the product variant in the unit system specified with `weight_unit`.", "args": [], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } + "kind": "SCALAR", + "name": "Float", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "transaction", - "description": "The actual transaction recorded by Shopify after having processed the payment with the gateway.", + "name": "weightUnit", + "description": "Unit of measurement for weight.", "args": [], "type": { - "kind": "OBJECT", - "name": "Transaction", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "WeightUnit", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null @@ -25516,6 +25860,11 @@ ], "inputFields": null, "interfaces": [ + { + "kind": "INTERFACE", + "name": "HasMetafields", + "ofType": null + }, { "kind": "INTERFACE", "name": "Node", @@ -25527,43 +25876,19 @@ }, { "kind": "OBJECT", - "name": "PaymentSettings", - "description": "Settings related to payments.", + "name": "ProductVariantComponent", + "description": "Represents a component of a bundle variant.\n", "fields": [ { - "name": "acceptedCardBrands", - "description": "List of the card brands which the shop accepts.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "CardBrand", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "cardVaultUrl", - "description": "The url pointing to the endpoint to vault credit cards.", + "name": "productVariant", + "description": "The product variant object that the component belongs to.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "URL", + "kind": "OBJECT", + "name": "ProductVariant", "ofType": null } }, @@ -25571,40 +25896,59 @@ "deprecationReason": null }, { - "name": "countryCode", - "description": "The country where the shop is located.", + "name": "quantity", + "description": "The quantity of component present in the bundle.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "ENUM", - "name": "CountryCode", + "kind": "SCALAR", + "name": "Int", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ProductVariantComponentConnection", + "description": "An auto-generated type for paginating through multiple ProductVariantComponents.\n", + "fields": [ { - "name": "currencyCode", - "description": "The three-letter code for the shop's primary currency.", + "name": "edges", + "description": "A list of edges.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "ENUM", - "name": "CurrencyCode", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "ProductVariantComponentEdge", + "ofType": null + } + } } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "enabledPresentmentCurrencies", - "description": "A list of enabled currencies (ISO 4217 format) that the shop accepts.\nMerchants can enable currencies from their Shopify Payments settings in the Shopify admin.\n", + "name": "nodes", + "description": "A list of the nodes contained in ProductVariantComponentEdge.", "args": [], "type": { "kind": "NON_NULL", @@ -25616,8 +25960,8 @@ "kind": "NON_NULL", "name": null, "ofType": { - "kind": "ENUM", - "name": "CurrencyCode", + "kind": "OBJECT", + "name": "ProductVariantComponent", "ofType": null } } @@ -25627,36 +25971,16 @@ "deprecationReason": null }, { - "name": "shopifyPaymentsAccountId", - "description": "The shop’s Shopify Payments account ID.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "supportedDigitalWallets", - "description": "List of the digital wallets which the shop supports.", + "name": "pageInfo", + "description": "Information to aid in pagination.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "DigitalWallet", - "ofType": null - } - } + "kind": "OBJECT", + "name": "PageInfo", + "ofType": null } }, "isDeprecated": false, @@ -25669,77 +25993,56 @@ "possibleTypes": null }, { - "kind": "ENUM", - "name": "PaymentTokenType", - "description": "The valid values for the types of payment token.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "APPLE_PAY", - "description": "Apple Pay token type.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "VAULT", - "description": "Vault payment token type.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SHOPIFY_PAY", - "description": "Shopify Pay token type.", - "isDeprecated": false, - "deprecationReason": null - }, + "kind": "OBJECT", + "name": "ProductVariantComponentEdge", + "description": "An auto-generated type which holds one ProductVariantComponent and a cursor during pagination.\n", + "fields": [ { - "name": "GOOGLE_PAY", - "description": "Google Pay token type.", + "name": "cursor", + "description": "A cursor for use in pagination.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "STRIPE_VAULT_TOKEN", - "description": "Stripe token type.", + "name": "node", + "description": "The item at the end of ProductVariantComponentEdge.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "ProductVariantComponent", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null } ], - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "PredictiveSearchLimitScope", - "description": "Decides the distribution of results.", - "fields": null, "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "ALL", - "description": "Return results up to limit across all types.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "EACH", - "description": "Return results up to limit per type.", - "isDeprecated": false, - "deprecationReason": null - } - ], + "interfaces": [], + "enumValues": null, "possibleTypes": null }, { "kind": "OBJECT", - "name": "PredictiveSearchResult", - "description": "A predictive search result represents a list of products, collections, pages, articles, and query suggestions\nthat matches the predictive search query.\n", + "name": "ProductVariantConnection", + "description": "An auto-generated type for paginating through multiple ProductVariants.\n", "fields": [ { - "name": "articles", - "description": "The articles that match the search query.", + "name": "edges", + "description": "A list of edges.", "args": [], "type": { "kind": "NON_NULL", @@ -25752,7 +26055,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "Article", + "name": "ProductVariantEdge", "ofType": null } } @@ -25762,8 +26065,8 @@ "deprecationReason": null }, { - "name": "collections", - "description": "The articles that match the search query.", + "name": "nodes", + "description": "A list of the nodes contained in ProductVariantEdge.", "args": [], "type": { "kind": "NON_NULL", @@ -25776,7 +26079,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "Collection", + "name": "ProductVariant", "ofType": null } } @@ -25786,72 +26089,59 @@ "deprecationReason": null }, { - "name": "pages", - "description": "The pages that match the search query.", + "name": "pageInfo", + "description": "Information to aid in pagination.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Page", - "ofType": null - } - } + "kind": "OBJECT", + "name": "PageInfo", + "ofType": null } }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ProductVariantEdge", + "description": "An auto-generated type which holds one ProductVariant and a cursor during pagination.\n", + "fields": [ { - "name": "products", - "description": "The products that match the search query.", + "name": "cursor", + "description": "A cursor for use in pagination.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Product", - "ofType": null - } - } + "kind": "SCALAR", + "name": "String", + "ofType": null } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "queries", - "description": "The query suggestions that are relevant to the search query.", + "name": "node", + "description": "The item at the end of ProductVariantEdge.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SearchQuerySuggestion", - "ofType": null - } - } + "kind": "OBJECT", + "name": "ProductVariant", + "ofType": null } }, "isDeprecated": false, @@ -25865,39 +26155,39 @@ }, { "kind": "ENUM", - "name": "PredictiveSearchType", - "description": "The types of search items to perform predictive search on.", + "name": "ProductVariantSortKeys", + "description": "The set of valid sort keys for the ProductVariant query.", "fields": null, "inputFields": null, "interfaces": null, "enumValues": [ { - "name": "COLLECTION", - "description": "Returns matching collections.", + "name": "TITLE", + "description": "Sort by the `title` value.", "isDeprecated": false, "deprecationReason": null }, { - "name": "PRODUCT", - "description": "Returns matching products.", + "name": "SKU", + "description": "Sort by the `sku` value.", "isDeprecated": false, "deprecationReason": null }, { - "name": "PAGE", - "description": "Returns matching pages.", + "name": "POSITION", + "description": "Sort by the `position` value.", "isDeprecated": false, "deprecationReason": null }, { - "name": "ARTICLE", - "description": "Returns matching articles.", + "name": "ID", + "description": "Sort by the `id` value.", "isDeprecated": false, "deprecationReason": null }, { - "name": "QUERY", - "description": "Returns matching query strings.", + "name": "RELEVANCE", + "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", "isDeprecated": false, "deprecationReason": null } @@ -25905,51 +26195,48 @@ "possibleTypes": null }, { - "kind": "INPUT_OBJECT", - "name": "PriceRangeFilter", - "description": "The input fields for a filter used to view a subset of products in a collection matching a specific price range.\n", - "fields": null, - "inputFields": [ + "kind": "OBJECT", + "name": "PurchasingCompany", + "description": "Represents information about the buyer that is interacting with the cart.", + "fields": [ { - "name": "max", - "description": "The maximum price in the range. Empty indicates no max price.", + "name": "company", + "description": "The company associated to the order or draft order.", + "args": [], "type": { - "kind": "SCALAR", - "name": "Float", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Company", + "ofType": null + } }, - "defaultValue": null + "isDeprecated": false, + "deprecationReason": null }, { - "name": "min", - "description": "The minimum price in the range. Defaults to zero.", + "name": "contact", + "description": "The company contact associated to the order or draft order.", + "args": [], "type": { - "kind": "SCALAR", - "name": "Float", + "kind": "OBJECT", + "name": "CompanyContact", "ofType": null }, - "defaultValue": "0.0" - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "PricingPercentageValue", - "description": "The value of the percentage pricing object.", - "fields": [ + "isDeprecated": false, + "deprecationReason": null + }, { - "name": "percentage", - "description": "The percentage value of the object.", + "name": "location", + "description": "The company location associated to the order or draft order.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "Float", + "kind": "OBJECT", + "name": "CompanyLocation", "ofType": null } }, @@ -25962,42 +26249,21 @@ "enumValues": null, "possibleTypes": null }, - { - "kind": "UNION", - "name": "PricingValue", - "description": "The price value (fixed or percentage) for a discount application.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": [ - { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "PricingPercentageValue", - "ofType": null - } - ] - }, { "kind": "OBJECT", - "name": "Product", - "description": "A product represents an individual item for sale in a Shopify store. Products are often physical, but they don't have to be.\nFor example, a digital download (such as a movie, music or ebook file) also\nqualifies as a product, as do services (such as equipment rental, work for hire,\ncustomization of another product or an extended warranty).\n", + "name": "QuantityPriceBreak", + "description": "Quantity price breaks lets you offer different rates that are based on the\namount of a specific variant being ordered.\n", "fields": [ { - "name": "availableForSale", - "description": "Indicates if at least one product variant is available for sale.", + "name": "minimumQuantity", + "description": "Minimum quantity required to reach new quantity break price.\n", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "Boolean", + "name": "Int", "ofType": null } }, @@ -26005,119 +26271,111 @@ "deprecationReason": null }, { - "name": "collections", - "description": "List of collections a product belongs to.", - "args": [ - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false" - } - ], + "name": "price", + "description": "The price of variant after reaching the minimum quanity.\n", + "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "OBJECT", - "name": "CollectionConnection", + "name": "MoneyV2", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "QuantityPriceBreakConnection", + "description": "An auto-generated type for paginating through multiple QuantityPriceBreaks.\n", + "fields": [ { - "name": "compareAtPriceRange", - "description": "The compare at price of the product across all variants.", + "name": "edges", + "description": "A list of edges.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "ProductPriceRange", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "QuantityPriceBreakEdge", + "ofType": null + } + } } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "createdAt", - "description": "The date and time when the product was created.", + "name": "nodes", + "description": "A list of the nodes contained in QuantityPriceBreakEdge.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "QuantityPriceBreak", + "ofType": null + } + } } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "description", - "description": "Stripped description of the product, single line with HTML tags removed.", - "args": [ - { - "name": "truncateAt", - "description": "Truncates string after the given length.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null + "name": "pageInfo", + "description": "Information to aid in pagination.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "PageInfo", + "ofType": null } - ], + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "QuantityPriceBreakEdge", + "description": "An auto-generated type which holds one QuantityPriceBreak and a cursor during pagination.\n", + "fields": [ + { + "name": "cursor", + "description": "A cursor for use in pagination.", + "args": [], "type": { "kind": "NON_NULL", "name": null, @@ -26131,161 +26389,117 @@ "deprecationReason": null }, { - "name": "descriptionHtml", - "description": "The description of the product, complete with HTML formatting.", + "name": "node", + "description": "The item at the end of QuantityPriceBreakEdge.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "HTML", + "kind": "OBJECT", + "name": "QuantityPriceBreak", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "QuantityRule", + "description": "The quantity rule for the product variant in a given context.\n", + "fields": [ { - "name": "featuredImage", - "description": "The featured image for the product.\n\nThis field is functionally equivalent to `images(first: 1)`.\n", + "name": "increment", + "description": "The value that specifies the quantity increment between minimum and maximum of the rule.\nOnly quantities divisible by this value will be considered valid.\n\nThe increment must be lower than or equal to the minimum and the maximum, and both minimum and maximum\nmust be divisible by this value.\n", "args": [], "type": { - "kind": "OBJECT", - "name": "Image", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "handle", - "description": "A human-friendly unique string for the Product automatically generated from its title.\nThey are used by the Liquid templating language to refer to objects.\n", + "name": "maximum", + "description": "An optional value that defines the highest allowed quantity purchased by the customer.\nIf defined, maximum must be lower than or equal to the minimum and must be a multiple of the increment.\n", "args": [], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } + "kind": "SCALAR", + "name": "Int", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "id", - "description": "A globally-unique ID.", + "name": "minimum", + "description": "The value that defines the lowest allowed quantity purchased by the customer.\nThe minimum must be a multiple of the quantity rule's increment.\n", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "ID", + "name": "Int", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "QueryRoot", + "description": "The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start.", + "fields": [ { - "name": "images", - "description": "List of images associated with the product.", + "name": "article", + "description": "Fetch a specific Article by its ID.", "args": [ { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", + "name": "id", + "description": "The ID of the `Article`.", "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } }, "defaultValue": null - }, - { - "name": "sortKey", - "description": "Sort the underlying list by the given key.", - "type": { - "kind": "ENUM", - "name": "ProductImageSortKeys", - "ofType": null - }, - "defaultValue": "POSITION" - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false" } ], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ImageConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "isGiftCard", - "description": "Whether the product is a gift card.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } + "kind": "OBJECT", + "name": "Article", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "media", - "description": "The media associated with the product.", + "name": "articles", + "description": "List of the shop's articles.", "args": [ { "name": "first", @@ -26327,25 +26541,35 @@ }, "defaultValue": null }, + { + "name": "reverse", + "description": "Reverse the order of the underlying list.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false" + }, { "name": "sortKey", "description": "Sort the underlying list by the given key.", "type": { "kind": "ENUM", - "name": "ProductMediaSortKeys", + "name": "ArticleSortKeys", "ofType": null }, - "defaultValue": "POSITION" + "defaultValue": "ID" }, { - "name": "reverse", - "description": "Reverse the order of the underlying list.", + "name": "query", + "description": "Apply one or multiple filters to the query.\n| name | description | acceptable_values | default_value | example_use |\n| ---- | ---- | ---- | ---- | ---- |\n| author |\n| blog_title |\n| created_at |\n| tag |\n| tag_not |\n| updated_at |\nRefer to the detailed [search syntax](https://shopify.dev/api/usage/search-syntax) for more information about using filters.\n", "type": { "kind": "SCALAR", - "name": "Boolean", + "name": "String", "ofType": null }, - "defaultValue": "false" + "defaultValue": null } ], "type": { @@ -26353,7 +26577,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "MediaConnection", + "name": "ArticleConnection", "ofType": null } }, @@ -26361,203 +26585,68 @@ "deprecationReason": null }, { - "name": "metafield", - "description": "Returns a metafield found by namespace and key.", + "name": "blog", + "description": "Fetch a specific `Blog` by one of its unique attributes.", "args": [ { - "name": "key", - "description": "The identifier for the metafield.", + "name": "handle", + "description": "The handle of the `Blog`.", "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } + "kind": "SCALAR", + "name": "String", + "ofType": null }, "defaultValue": null }, { - "name": "namespace", - "description": "The container the metafield belongs to.", + "name": "id", + "description": "The ID of the `Blog`.", "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } + "kind": "SCALAR", + "name": "ID", + "ofType": null }, "defaultValue": null } ], "type": { "kind": "OBJECT", - "name": "Metafield", + "name": "Blog", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "metafields", - "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.", + "name": "blogByHandle", + "description": "Find a blog by its handle.", "args": [ { - "name": "identifiers", - "description": "The list of metafields to retrieve by namespace and key.", + "name": "handle", + "description": "The handle of the blog.", "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "HasMetafieldsIdentifier", - "ofType": null - } - } + "kind": "SCALAR", + "name": "String", + "ofType": null } }, "defaultValue": null } ], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "onlineStoreUrl", - "description": "The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "URL", + "kind": "OBJECT", + "name": "Blog", "ofType": null }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "options", - "description": "List of product options.", - "args": [ - { - "name": "first", - "description": "Truncate the array result to this size.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ProductOption", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "priceRange", - "description": "The price range.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ProductPriceRange", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "productType", - "description": "A categorization that a product can be tagged with, commonly used for filtering and searching.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "publishedAt", - "description": "The date and time when the product was published to the channel.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "requiresSellingPlan", - "description": "Whether the product can only be purchased with a selling plan.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null + "isDeprecated": true, + "deprecationReason": "Use `blog` instead." }, { - "name": "sellingPlanGroups", - "description": "A list of a product's available selling plan groups. A selling plan group represents a selling method. For example, 'Subscribe and save' is a selling method where customers pay for goods or services per delivery. A selling plan group contains individual selling plans.", + "name": "blogs", + "description": "List of the shop's blogs.", "args": [ { "name": "first", @@ -26608,6 +26697,26 @@ "ofType": null }, "defaultValue": "false" + }, + { + "name": "sortKey", + "description": "Sort the underlying list by the given key.", + "type": { + "kind": "ENUM", + "name": "BlogSortKeys", + "ofType": null + }, + "defaultValue": "ID" + }, + { + "name": "query", + "description": "Apply one or multiple filters to the query.\n| name | description | acceptable_values | default_value | example_use |\n| ---- | ---- | ---- | ---- | ---- |\n| created_at |\n| handle |\n| title |\n| updated_at |\nRefer to the detailed [search syntax](https://shopify.dev/api/usage/search-syntax) for more information about using filters.\n", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null } ], "type": { @@ -26615,23 +26724,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "SellingPlanGroupConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "seo", - "description": "The product's SEO information.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SEO", + "name": "BlogConnection", "ofType": null } }, @@ -26639,107 +26732,106 @@ "deprecationReason": null }, { - "name": "tags", - "description": "A comma separated list of tags that have been added to the product.\nAdditional access scope required for private apps: unauthenticated_read_product_tags.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { + "name": "cart", + "description": "Retrieve a cart by its ID. For more information, refer to\n[Manage a cart with the Storefront API](https://shopify.dev/custom-storefronts/cart/manage).\n", + "args": [ + { + "name": "id", + "description": "The ID of the cart.", + "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "String", + "name": "ID", "ofType": null } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "title", - "description": "The product’s title.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null + }, + "defaultValue": null } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalInventory", - "description": "The total quantity of inventory in stock for this Product.", - "args": [], + ], "type": { - "kind": "SCALAR", - "name": "Int", + "kind": "OBJECT", + "name": "Cart", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "trackingParameters", - "description": "A URL parameters to be added to a page URL when it is linked from a GraphQL result. This allows for tracking the origin of the traffic.", - "args": [], + "name": "cartCompletionAttempt", + "description": "A poll for the status of the cart checkout completion and order creation.\n", + "args": [ + { + "name": "attemptId", + "description": "The ID of the attempt.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + } + ], "type": { - "kind": "SCALAR", - "name": "String", + "kind": "UNION", + "name": "CartCompletionAttemptResult", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "updatedAt", - "description": "The date and time when the product was last modified.\nA product's `updatedAt` value can change for different reasons. For example, if an order\nis placed for a product that has inventory tracking set up, then the inventory adjustment\nis counted as an update.\n", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "DateTime", - "ofType": null + "name": "collection", + "description": "Fetch a specific `Collection` by one of its unique attributes.", + "args": [ + { + "name": "id", + "description": "The ID of the `Collection`.", + "type": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "handle", + "description": "The handle of the `Collection`.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null } + ], + "type": { + "kind": "OBJECT", + "name": "Collection", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "variantBySelectedOptions", - "description": "Find a product’s variant based on its selected options.\nThis is useful for converting a user’s selection of product options into a single matching variant.\nIf there is not a variant for the selected options, `null` will be returned.\n", + "name": "collectionByHandle", + "description": "Find a collection by its handle.", "args": [ { - "name": "selectedOptions", - "description": "The input fields used for a selected option.", + "name": "handle", + "description": "The handle of the collection.", "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "SelectedOptionInput", - "ofType": null - } - } + "kind": "SCALAR", + "name": "String", + "ofType": null } }, "defaultValue": null @@ -26747,15 +26839,15 @@ ], "type": { "kind": "OBJECT", - "name": "ProductVariant", + "name": "Collection", "ofType": null }, - "isDeprecated": false, - "deprecationReason": null + "isDeprecated": true, + "deprecationReason": "Use `collection` instead." }, { - "name": "variants", - "description": "List of the product’s variants.", + "name": "collections", + "description": "List of the shop’s collections.", "args": [ { "name": "first", @@ -26797,25 +26889,35 @@ }, "defaultValue": null }, + { + "name": "reverse", + "description": "Reverse the order of the underlying list.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false" + }, { "name": "sortKey", "description": "Sort the underlying list by the given key.", "type": { "kind": "ENUM", - "name": "ProductVariantSortKeys", + "name": "CollectionSortKeys", "ofType": null }, - "defaultValue": "POSITION" + "defaultValue": "ID" }, { - "name": "reverse", - "description": "Reverse the order of the underlying list.", + "name": "query", + "description": "Apply one or multiple filters to the query.\n| name | description | acceptable_values | default_value | example_use |\n| ---- | ---- | ---- | ---- | ---- |\n| collection_type |\n| title |\n| updated_at |\nRefer to the detailed [search syntax](https://shopify.dev/api/usage/search-syntax) for more information about using filters.\n", "type": { "kind": "SCALAR", - "name": "Boolean", + "name": "String", "ofType": null }, - "defaultValue": "false" + "defaultValue": null } ], "type": { @@ -26823,443 +26925,137 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "ProductVariantConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "vendor", - "description": "The product’s vendor name.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", + "name": "CollectionConnection", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "HasMetafields", - "ofType": null - }, - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - }, - { - "kind": "INTERFACE", - "name": "OnlineStorePublishable", - "ofType": null - }, - { - "kind": "INTERFACE", - "name": "Trackable", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "ProductCollectionSortKeys", - "description": "The set of valid sort keys for the ProductCollection query.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "BEST_SELLING", - "description": "Sort by the `best-selling` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CREATED", - "description": "Sort by the `created` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "COLLECTION_DEFAULT", - "description": "Sort by the `collection-default` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ID", - "description": "Sort by the `id` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "MANUAL", - "description": "Sort by the `manual` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PRICE", - "description": "Sort by the `price` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RELEVANCE", - "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TITLE", - "description": "Sort by the `title` value.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "ProductConnection", - "description": "An auto-generated type for paginating through multiple Products.\n", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "ProductEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "filters", - "description": "A list of available filters.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Filter", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null }, { - "name": "nodes", - "description": "A list of the nodes contained in ProductEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { + "name": "customer", + "description": "The customer associated with the given access token. Tokens are obtained by using the\n[`customerAccessTokenCreate` mutation](https://shopify.dev/docs/api/storefront/latest/mutations/customerAccessTokenCreate).\n", + "args": [ + { + "name": "customerAccessToken", + "description": "The customer access token.", + "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "Product", + "kind": "SCALAR", + "name": "String", "ofType": null } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null + }, + "defaultValue": null } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "ProductEdge", - "description": "An auto-generated type which holds one Product and a cursor during pagination.\n", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], + ], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } + "kind": "OBJECT", + "name": "Customer", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "node", - "description": "The item at the end of ProductEdge.", + "name": "localization", + "description": "Returns the localized experiences configured for the shop.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "OBJECT", - "name": "Product", + "name": "Localization", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "ProductFilter", - "description": "The input fields for a filter used to view a subset of products in a collection.\nBy default, the `available` and `price` filters are enabled. Filters are customized with the Shopify Search & Discovery app.\nLearn more about [customizing storefront filtering](https://help.shopify.com/manual/online-store/themes/customizing-themes/storefront-filters).\n", - "fields": null, - "inputFields": [ - { - "name": "available", - "description": "Filter on if the product is available for sale.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "price", - "description": "A range of prices to filter with-in.", - "type": { - "kind": "INPUT_OBJECT", - "name": "PriceRangeFilter", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "productMetafield", - "description": "A product metafield to filter on.", - "type": { - "kind": "INPUT_OBJECT", - "name": "MetafieldFilter", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "productType", - "description": "The product type to filter on.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "productVendor", - "description": "The product vendor to filter on.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "tag", - "description": "A product tag to filter on.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "variantMetafield", - "description": "A variant metafield to filter on.", - "type": { - "kind": "INPUT_OBJECT", - "name": "MetafieldFilter", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "variantOption", - "description": "A variant option to filter on.", - "type": { - "kind": "INPUT_OBJECT", - "name": "VariantOptionFilter", - "ofType": null - }, - "defaultValue": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "ProductImageSortKeys", - "description": "The set of valid sort keys for the ProductImage query.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "CREATED_AT", - "description": "Sort by the `created_at` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "POSITION", - "description": "Sort by the `position` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ID", - "description": "Sort by the `id` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RELEVANCE", - "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "ProductMediaSortKeys", - "description": "The set of valid sort keys for the ProductMedia query.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "POSITION", - "description": "Sort by the `position` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ID", - "description": "Sort by the `id` value.", - "isDeprecated": false, - "deprecationReason": null }, { - "name": "RELEVANCE", - "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "ProductOption", - "description": "Product property names like \"Size\", \"Color\", and \"Material\" that the customers can select.\nVariants are selected based on permutations of these options.\n255 characters limit each.\n", - "fields": [ - { - "name": "id", - "description": "A globally-unique ID.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null + "name": "locations", + "description": "List of the shop's locations that support in-store pickup.\n\nWhen sorting by distance, you must specify a location via the `near` argument.\n\n", + "args": [ + { + "name": "first", + "description": "Returns up to the first `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "after", + "description": "Returns the elements that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "last", + "description": "Returns up to the last `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "before", + "description": "Returns the elements that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "reverse", + "description": "Reverse the order of the underlying list.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false" + }, + { + "name": "sortKey", + "description": "Sort the underlying list by the given key.", + "type": { + "kind": "ENUM", + "name": "LocationSortKeys", + "ofType": null + }, + "defaultValue": "ID" + }, + { + "name": "near", + "description": "Used to sort results based on proximity to the provided location.", + "type": { + "kind": "INPUT_OBJECT", + "name": "GeoCoordinateInput", + "ofType": null + }, + "defaultValue": null } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "name", - "description": "The product option’s name.", - "args": [], + ], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "LocationConnection", "ofType": null } }, @@ -27267,16 +27063,13 @@ "deprecationReason": null }, { - "name": "values", - "description": "The corresponding value to the product option name.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { + "name": "menu", + "description": "Retrieve a [navigation menu](https://help.shopify.com/manual/online-store/menus-and-links) by its handle.", + "args": [ + { + "name": "handle", + "description": "The navigation menu's handle.", + "type": { "kind": "NON_NULL", "name": null, "ofType": { @@ -27284,238 +27077,353 @@ "name": "String", "ofType": null } - } + }, + "defaultValue": null } + ], + "type": { + "kind": "OBJECT", + "name": "Menu", + "ofType": null }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "ProductPriceRange", - "description": "The price range of the product.", - "fields": [ + }, { - "name": "maxVariantPrice", - "description": "The highest variant's price.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null + "name": "metaobject", + "description": "Fetch a specific Metaobject by one of its unique identifiers.", + "args": [ + { + "name": "id", + "description": "The ID of the metaobject.", + "type": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "handle", + "description": "The handle and type of the metaobject.", + "type": { + "kind": "INPUT_OBJECT", + "name": "MetaobjectHandleInput", + "ofType": null + }, + "defaultValue": null } + ], + "type": { + "kind": "OBJECT", + "name": "Metaobject", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "minVariantPrice", - "description": "The lowest variant's price.", - "args": [], + "name": "metaobjects", + "description": "All active metaobjects for the shop.", + "args": [ + { + "name": "type", + "description": "The type of metaobject to retrieve.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "sortKey", + "description": "The key of a field to sort with. Supports \"id\" and \"updated_at\".", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "first", + "description": "Returns up to the first `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "after", + "description": "Returns the elements that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "last", + "description": "Returns up to the last `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "before", + "description": "Returns the elements that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "reverse", + "description": "Reverse the order of the underlying list.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false" + } + ], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "OBJECT", - "name": "MoneyV2", + "name": "MetaobjectConnection", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "ProductRecommendationIntent", - "description": "The recommendation intent that is used to generate product recommendations.\nYou can use intent to generate product recommendations according to different strategies.\n", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "RELATED", - "description": "Offer customers a mix of products that are similar or complementary to a product for which recommendations are to be fetched. An example is substitutable products that display in a You may also like section.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "COMPLEMENTARY", - "description": "Offer customers products that are complementary to a product for which recommendations are to be fetched. An example is add-on products that display in a Pair it with section.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "ProductSortKeys", - "description": "The set of valid sort keys for the Product query.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "BEST_SELLING", - "description": "Sort by the `best_selling` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CREATED_AT", - "description": "Sort by the `created_at` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ID", - "description": "Sort by the `id` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PRICE", - "description": "Sort by the `price` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "PRODUCT_TYPE", - "description": "Sort by the `product_type` value.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "RELEVANCE", - "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "TITLE", - "description": "Sort by the `title` value.", - "isDeprecated": false, - "deprecationReason": null }, { - "name": "UPDATED_AT", - "description": "Sort by the `updated_at` value.", + "name": "node", + "description": "Returns a specific node by ID.", + "args": [ + { + "name": "id", + "description": "The ID of the Node to return.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "defaultValue": null + } + ], + "type": { + "kind": "INTERFACE", + "name": "Node", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "VENDOR", - "description": "Sort by the `vendor` value.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "ProductVariant", - "description": "A product variant represents a different version of a product, such as differing sizes or differing colors.\n", - "fields": [ - { - "name": "availableForSale", - "description": "Indicates if the product variant is available for sale.", - "args": [], + "name": "nodes", + "description": "Returns the list of nodes with the given IDs.", + "args": [ + { + "name": "ids", + "description": "The IDs of the Nodes to return.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + } + } + }, + "defaultValue": null + } + ], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "INTERFACE", + "name": "Node", + "ofType": null + } } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "barcode", - "description": "The barcode (for example, ISBN, UPC, or GTIN) associated with the variant.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "compareAtPrice", - "description": "The compare at price of the variant. This can be used to mark a variant as on sale, when `compareAtPrice` is higher than `price`.", - "args": [], + "name": "page", + "description": "Fetch a specific `Page` by one of its unique attributes.", + "args": [ + { + "name": "handle", + "description": "The handle of the `Page`.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "id", + "description": "The ID of the `Page`.", + "type": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + }, + "defaultValue": null + } + ], "type": { "kind": "OBJECT", - "name": "MoneyV2", + "name": "Page", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "compareAtPriceV2", - "description": "The compare at price of the variant. This can be used to mark a variant as on sale, when `compareAtPriceV2` is higher than `priceV2`.", - "args": [], + "name": "pageByHandle", + "description": "Find a page by its handle.", + "args": [ + { + "name": "handle", + "description": "The handle of the page.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + } + ], "type": { "kind": "OBJECT", - "name": "MoneyV2", + "name": "Page", "ofType": null }, "isDeprecated": true, - "deprecationReason": "Use `compareAtPrice` instead." - }, - { - "name": "currentlyNotInStock", - "description": "Whether a product is out of stock but still available for purchase (used for backorders).", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null + "deprecationReason": "Use `page` instead." }, { - "name": "id", - "description": "A globally-unique ID.", - "args": [], + "name": "pages", + "description": "List of the shop's pages.", + "args": [ + { + "name": "first", + "description": "Returns up to the first `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "after", + "description": "Returns the elements that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "last", + "description": "Returns up to the last `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "before", + "description": "Returns the elements that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "reverse", + "description": "Reverse the order of the underlying list.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false" + }, + { + "name": "sortKey", + "description": "Sort the underlying list by the given key.", + "type": { + "kind": "ENUM", + "name": "PageSortKeys", + "ofType": null + }, + "defaultValue": "ID" + }, + { + "name": "query", + "description": "Apply one or multiple filters to the query.\n| name | description | acceptable_values | default_value | example_use |\n| ---- | ---- | ---- | ---- | ---- |\n| created_at |\n| handle |\n| title |\n| updated_at |\nRefer to the detailed [search syntax](https://shopify.dev/api/usage/search-syntax) for more information about using filters.\n", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + } + ], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "ID", + "kind": "OBJECT", + "name": "PageConnection", "ofType": null } }, @@ -27523,24 +27431,32 @@ "deprecationReason": null }, { - "name": "image", - "description": "Image associated with the product variant. This field falls back to the product image if no image is available.", - "args": [], - "type": { - "kind": "OBJECT", - "name": "Image", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metafield", - "description": "Returns a metafield found by namespace and key.", + "name": "predictiveSearch", + "description": "List of the predictive search results.", "args": [ { - "name": "key", - "description": "The identifier for the metafield.", + "name": "limit", + "description": "Limits the number of results based on `limit_scope`. The value can range from 1 to 10, and the default is 10.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "limitScope", + "description": "Decides the distribution of results.", + "type": { + "kind": "ENUM", + "name": "PredictiveSearchLimitScope", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "query", + "description": "The search query.", "type": { "kind": "NON_NULL", "name": null, @@ -27553,64 +27469,164 @@ "defaultValue": null }, { - "name": "namespace", - "description": "The container the metafield belongs to.", + "name": "searchableFields", + "description": "Specifies the list of resource fields to use for search. The default fields searched on are TITLE, PRODUCT_TYPE, VARIANT_TITLE, and VENDOR. For the best search experience, you should search on the default field set.\n\nThe input must not contain more than `250` values.", "type": { - "kind": "NON_NULL", + "kind": "LIST", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "SearchableField", + "ofType": null + } + } + }, + "defaultValue": null + }, + { + "name": "types", + "description": "The types of resources to search for.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "PredictiveSearchType", + "ofType": null + } } }, "defaultValue": null + }, + { + "name": "unavailableProducts", + "description": "Specifies how unavailable products are displayed in the search results.", + "type": { + "kind": "ENUM", + "name": "SearchUnavailableProductsType", + "ofType": null + }, + "defaultValue": null } ], "type": { "kind": "OBJECT", - "name": "Metafield", + "name": "PredictiveSearchResult", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "metafields", - "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.", + "name": "product", + "description": "Fetch a specific `Product` by one of its unique attributes.", "args": [ { - "name": "identifiers", - "description": "The list of metafields to retrieve by namespace and key.", + "name": "id", + "description": "The ID of the `Product`.", + "type": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "handle", + "description": "The handle of the `Product`.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "Product", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "productByHandle", + "description": "Find a product by its handle.", + "args": [ + { + "name": "handle", + "description": "A unique string that identifies the product. Handles are automatically\ngenerated based on the product's title, and are always lowercase. Whitespace\nand special characters are replaced with a hyphen: `-`. If there are\nmultiple consecutive whitespace or special characters, then they're replaced\nwith a single hyphen. Whitespace or special characters at the beginning are\nremoved. If a duplicate product title is used, then the handle is\nauto-incremented by one. For example, if you had two products called\n`Potion`, then their handles would be `potion` and `potion-1`. After a\nproduct has been created, changing the product title doesn't update the handle.\n", "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "HasMetafieldsIdentifier", - "ofType": null - } - } + "kind": "SCALAR", + "name": "String", + "ofType": null } }, "defaultValue": null } ], "type": { - "kind": "NON_NULL", + "kind": "OBJECT", + "name": "Product", + "ofType": null + }, + "isDeprecated": true, + "deprecationReason": "Use `product` instead." + }, + { + "name": "productRecommendations", + "description": "Find recommended products related to a given `product_id`.\nTo learn more about how recommendations are generated, see\n[*Showing product recommendations on product pages*](https://help.shopify.com/themes/development/recommended-products).\n", + "args": [ + { + "name": "productId", + "description": "The id of the product.", + "type": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "productHandle", + "description": "The handle of the product.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "intent", + "description": "The recommendation intent that is used to generate product recommendations. You can use intent to generate product recommendations on various pages across the channels, according to different strategies.", + "type": { + "kind": "ENUM", + "name": "ProductRecommendationIntent", + "ofType": null + }, + "defaultValue": "RELATED" + } + ], + "type": { + "kind": "LIST", "name": null, "ofType": { - "kind": "LIST", + "kind": "NON_NULL", "name": null, "ofType": { "kind": "OBJECT", - "name": "Metafield", + "name": "Product", "ofType": null } } @@ -27619,15 +27635,30 @@ "deprecationReason": null }, { - "name": "price", - "description": "The product variant’s price.", - "args": [], + "name": "productTags", + "description": "Tags added to products.\nAdditional access scope required: unauthenticated_read_product_tags.\n", + "args": [ + { + "name": "first", + "description": "Returns up to the first `n` elements from the list.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "defaultValue": null + } + ], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "OBJECT", - "name": "MoneyV2", + "name": "StringConnection", "ofType": null } }, @@ -27635,31 +27666,30 @@ "deprecationReason": null }, { - "name": "priceV2", - "description": "The product variant’s price.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null + "name": "productTypes", + "description": "List of product types for the shop's products that are published to your app.", + "args": [ + { + "name": "first", + "description": "Returns up to the first `n` elements from the list.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "defaultValue": null } - }, - "isDeprecated": true, - "deprecationReason": "Use `price` instead." - }, - { - "name": "product", - "description": "The product object that the product variant belongs to.", - "args": [], + ], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "OBJECT", - "name": "Product", + "name": "StringConnection", "ofType": null } }, @@ -27667,27 +27697,86 @@ "deprecationReason": null }, { - "name": "quantityAvailable", - "description": "The total sellable quantity of the variant for online sales channels.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "requiresShipping", - "description": "Whether a customer needs to provide a shipping address when placing an order for the product variant.", - "args": [], + "name": "products", + "description": "List of the shop’s products. For storefront search, use [`search` query](https://shopify.dev/docs/api/storefront/latest/queries/search).", + "args": [ + { + "name": "first", + "description": "Returns up to the first `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "after", + "description": "Returns the elements that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "last", + "description": "Returns up to the last `n` elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "before", + "description": "Returns the elements that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "reverse", + "description": "Reverse the order of the underlying list.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "false" + }, + { + "name": "sortKey", + "description": "Sort the underlying list by the given key.", + "type": { + "kind": "ENUM", + "name": "ProductSortKeys", + "ofType": null + }, + "defaultValue": "ID" + }, + { + "name": "query", + "description": "Apply one or multiple filters to the query.\n| name | description | acceptable_values | default_value | example_use |\n| ---- | ---- | ---- | ---- | ---- |\n| available_for_sale |\n| created_at |\n| product_type |\n| tag |\n| tag_not |\n| title |\n| updated_at |\n| variants.price |\n| vendor |\nRefer to the detailed [search syntax](https://shopify.dev/api/usage/search-syntax) for more information about using filters.\n", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + } + ], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "Boolean", + "kind": "OBJECT", + "name": "ProductConnection", "ofType": null } }, @@ -27695,8 +27784,8 @@ "deprecationReason": null }, { - "name": "selectedOptions", - "description": "List of product options applied to the variant.", + "name": "publicApiVersions", + "description": "The list of public Storefront API versions, including supported, release candidate and unstable versions.", "args": [], "type": { "kind": "NON_NULL", @@ -27709,7 +27798,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "SelectedOption", + "name": "ApiVersion", "ofType": null } } @@ -27719,8 +27808,8 @@ "deprecationReason": null }, { - "name": "sellingPlanAllocations", - "description": "Represents an association between a variant and a selling plan. Selling plan allocations describe which selling plans are available for each variant, and what their impact is on pricing.", + "name": "search", + "description": "List of the search results.", "args": [ { "name": "first", @@ -27771,6 +27860,86 @@ "ofType": null }, "defaultValue": "false" + }, + { + "name": "sortKey", + "description": "Sort the underlying list by the given key.", + "type": { + "kind": "ENUM", + "name": "SearchSortKeys", + "ofType": null + }, + "defaultValue": "RELEVANCE" + }, + { + "name": "query", + "description": "The search query.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "prefix", + "description": "Specifies whether to perform a partial word match on the last search term.", + "type": { + "kind": "ENUM", + "name": "SearchPrefixQueryType", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "productFilters", + "description": "Returns a subset of products matching all product filters.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "ProductFilter", + "ofType": null + } + } + }, + "defaultValue": null + }, + { + "name": "types", + "description": "The types of resources to search for.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "SearchType", + "ofType": null + } + } + }, + "defaultValue": null + }, + { + "name": "unavailableProducts", + "description": "Specifies how unavailable products or variants are displayed in the search results.", + "type": { + "kind": "ENUM", + "name": "SearchUnavailableProductsType", + "ofType": null + }, + "defaultValue": null } ], "type": { @@ -27778,7 +27947,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "SellingPlanAllocationConnection", + "name": "SearchResultItemConnection", "ofType": null } }, @@ -27786,31 +27955,25 @@ "deprecationReason": null }, { - "name": "sku", - "description": "The SKU (stock keeping unit) associated with the variant.", + "name": "shop", + "description": "The shop associated with the storefront access token.", "args": [], "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Shop", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "storeAvailability", - "description": "The in-store pickup availability of this variant by location.", + "name": "urlRedirects", + "description": "A list of redirects for a shop.", "args": [ - { - "name": "near", - "description": "Used to sort results based on proximity to the provided location.", - "type": { - "kind": "INPUT_OBJECT", - "name": "GeoCoordinateInput", - "ofType": null - }, - "defaultValue": null - }, { "name": "first", "description": "Returns up to the first `n` elements from the list.", @@ -27860,14 +28023,102 @@ "ofType": null }, "defaultValue": "false" + }, + { + "name": "query", + "description": "Apply one or multiple filters to the query.\n| name | description | acceptable_values | default_value | example_use |\n| ---- | ---- | ---- | ---- | ---- |\n| created_at |\n| path |\n| target |\nRefer to the detailed [search syntax](https://shopify.dev/api/usage/search-syntax) for more information about using filters.\n", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "UrlRedirectConnection", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SEO", + "description": "SEO information.", + "fields": [ + { + "name": "description", + "description": "The meta description.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "title", + "description": "The SEO title.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ScriptDiscountApplication", + "description": "Script discount applications capture the intentions of a discount that\nwas created by a Shopify Script.\n", + "fields": [ + { + "name": "allocationMethod", + "description": "The method by which the discount's value is allocated to its entitled items.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "DiscountApplicationAllocationMethod", + "ofType": null } - ], + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "targetSelection", + "description": "Which lines of targetType that the discount is allocated over.", + "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "StoreAvailabilityConnection", + "kind": "ENUM", + "name": "DiscountApplicationTargetSelection", "ofType": null } }, @@ -27875,15 +28126,15 @@ "deprecationReason": null }, { - "name": "title", - "description": "The product variant’s title.", + "name": "targetType", + "description": "The type of line that the discount is applicable towards.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "ENUM", + "name": "DiscountApplicationTargetType", "ofType": null } }, @@ -27891,78 +28142,163 @@ "deprecationReason": null }, { - "name": "unitPrice", - "description": "The unit price value for the variant based on the variant's measurement.", + "name": "title", + "description": "The title of the application as defined by the Script.", "args": [], "type": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "unitPriceMeasurement", - "description": "The unit price measurement for the variant.", + "name": "value", + "description": "The value of the discount application.", "args": [], "type": { - "kind": "OBJECT", - "name": "UnitPriceMeasurement", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "UNION", + "name": "PricingValue", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "DiscountApplication", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "SearchPrefixQueryType", + "description": "Specifies whether to perform a partial word match on the last search term.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "LAST", + "description": "Perform a partial word match on the last search term.", + "isDeprecated": false, + "deprecationReason": null }, { - "name": "weight", - "description": "The weight of the product variant in the unit system specified with `weight_unit`.", + "name": "NONE", + "description": "Don't perform a partial word match on the last search term.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SearchQuerySuggestion", + "description": "A search query suggestion.", + "fields": [ + { + "name": "styledText", + "description": "The text of the search query suggestion with highlighted HTML tags.", "args": [], "type": { - "kind": "SCALAR", - "name": "Float", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "weightUnit", - "description": "Unit of measurement for weight.", + "name": "text", + "description": "The text of the search query suggestion.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "ENUM", - "name": "WeightUnit", + "kind": "SCALAR", + "name": "String", "ofType": null } }, "isDeprecated": false, "deprecationReason": null + }, + { + "name": "trackingParameters", + "description": "URL parameters to be added to a page URL to track the origin of on-site search traffic for [analytics reporting](https://help.shopify.com/manual/reports-and-analytics/shopify-reports/report-types/default-reports/behaviour-reports). Returns a result when accessed through the [search](https://shopify.dev/docs/api/storefront/current/queries/search) or [predictiveSearch](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries, otherwise returns null.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null } ], "inputFields": null, "interfaces": [ { "kind": "INTERFACE", - "name": "HasMetafields", - "ofType": null - }, - { - "kind": "INTERFACE", - "name": "Node", + "name": "Trackable", "ofType": null } ], "enumValues": null, "possibleTypes": null }, + { + "kind": "UNION", + "name": "SearchResultItem", + "description": "A search result that matches the search query.\n", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": [ + { + "kind": "OBJECT", + "name": "Article", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Page", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "Product", + "ofType": null + } + ] + }, { "kind": "OBJECT", - "name": "ProductVariantConnection", - "description": "An auto-generated type for paginating through multiple ProductVariants.\n", + "name": "SearchResultItemConnection", + "description": "An auto-generated type for paginating through multiple SearchResultItems.\n", "fields": [ { "name": "edges", @@ -27979,7 +28315,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "ProductVariantEdge", + "name": "SearchResultItemEdge", "ofType": null } } @@ -27990,7 +28326,7 @@ }, { "name": "nodes", - "description": "A list of the nodes contained in ProductVariantEdge.", + "description": "A list of the nodes contained in SearchResultItemEdge.", "args": [], "type": { "kind": "NON_NULL", @@ -28002,8 +28338,8 @@ "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "ProductVariant", + "kind": "UNION", + "name": "SearchResultItem", "ofType": null } } @@ -28027,6 +28363,46 @@ }, "isDeprecated": false, "deprecationReason": null + }, + { + "name": "productFilters", + "description": "A list of available filters.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Filter", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "totalCount", + "description": "The total number of results.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null } ], "inputFields": null, @@ -28036,8 +28412,8 @@ }, { "kind": "OBJECT", - "name": "ProductVariantEdge", - "description": "An auto-generated type which holds one ProductVariant and a cursor during pagination.\n", + "name": "SearchResultItemEdge", + "description": "An auto-generated type which holds one SearchResultItem and a cursor during pagination.\n", "fields": [ { "name": "cursor", @@ -28057,14 +28433,14 @@ }, { "name": "node", - "description": "The item at the end of ProductVariantEdge.", + "description": "The item at the end of SearchResultItemEdge.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "ProductVariant", + "kind": "UNION", + "name": "SearchResultItem", "ofType": null } }, @@ -28079,39 +28455,144 @@ }, { "kind": "ENUM", - "name": "ProductVariantSortKeys", - "description": "The set of valid sort keys for the ProductVariant query.", + "name": "SearchSortKeys", + "description": "The set of valid sort keys for the search query.", "fields": null, "inputFields": null, "interfaces": null, "enumValues": [ { - "name": "ID", - "description": "Sort by the `id` value.", + "name": "PRICE", + "description": "Sort by the `price` value.", "isDeprecated": false, "deprecationReason": null }, { - "name": "POSITION", - "description": "Sort by the `position` value.", + "name": "RELEVANCE", + "description": "Sort by relevance to the search terms.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "SearchType", + "description": "The types of search items to perform search within.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "PRODUCT", + "description": "Returns matching products.", "isDeprecated": false, "deprecationReason": null }, { - "name": "RELEVANCE", - "description": "Sort by relevance to the search terms when the `query` parameter is specified on the connection.\nDon't use this sort key when no search query is specified.\n", + "name": "PAGE", + "description": "Returns matching pages.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "ARTICLE", + "description": "Returns matching articles.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "SearchUnavailableProductsType", + "description": "Specifies whether to display results for unavailable products.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "SHOW", + "description": "Show unavailable products in the order that they're found.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "HIDE", + "description": "Exclude unavailable products.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "LAST", + "description": "Show unavailable products after all other matching results. This is the default.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "SearchableField", + "description": "Specifies the list of resource fields to search.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "AUTHOR", + "description": "Author of the page or article.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "BODY", + "description": "Body of the page or article or product description or collection description.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "PRODUCT_TYPE", + "description": "Product type.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "TAG", + "description": "Tag associated with the product or article.", "isDeprecated": false, "deprecationReason": null }, { "name": "TITLE", - "description": "Sort by the `title` value.", + "description": "Title of the page or article or product title or collection title.", "isDeprecated": false, "deprecationReason": null }, { - "name": "SKU", - "description": "Sort by the `sku` value.", + "name": "VARIANTS_BARCODE", + "description": "Variant barcode.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "VARIANTS_SKU", + "description": "Variant SKU.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "VARIANTS_TITLE", + "description": "Variant title.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "VENDOR", + "description": "Product vendor.", "isDeprecated": false, "deprecationReason": null } @@ -28120,117 +28601,153 @@ }, { "kind": "OBJECT", - "name": "QueryRoot", - "description": "The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start.", + "name": "SelectedOption", + "description": "Properties used by customers to select a product variant.\nProducts can have multiple options, like different sizes or colors.\n", "fields": [ { - "name": "article", - "description": "Fetch a specific Article by its ID.", - "args": [ - { - "name": "id", - "description": "The ID of the `Article`.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null + "name": "name", + "description": "The product option’s name.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null } - ], + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "value", + "description": "The product option’s value.", + "args": [], "type": { - "kind": "OBJECT", - "name": "Article", + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "SelectedOptionInput", + "description": "The input fields required for a selected option.", + "fields": null, + "inputFields": [ + { + "name": "name", + "description": "The product option’s name.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "value", + "description": "The product option’s value.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SellingPlan", + "description": "Represents how products and variants can be sold and purchased.", + "fields": [ + { + "name": "billingPolicy", + "description": "The billing policy for the selling plan.", + "args": [], + "type": { + "kind": "UNION", + "name": "SellingPlanBillingPolicy", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "checkoutCharge", + "description": "The initial payment due for the purchase.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "SellingPlanCheckoutCharge", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "deliveryPolicy", + "description": "The delivery policy for the selling plan.", + "args": [], + "type": { + "kind": "UNION", + "name": "SellingPlanDeliveryPolicy", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "description", + "description": "The description of the selling plan.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "articles", - "description": "List of the shop's articles.", - "args": [ - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "sortKey", - "description": "Sort the underlying list by the given key.", - "type": { - "kind": "ENUM", - "name": "ArticleSortKeys", - "ofType": null - }, - "defaultValue": "ID" - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false" - }, - { - "name": "query", - "description": "Supported filter parameters:\n - `author`\n - `blog_title`\n - `created_at`\n - `tag`\n - `tag_not`\n - `updated_at`\n\nSee the detailed [search syntax](https://shopify.dev/api/usage/search-syntax)\nfor more information about using filters.\n", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - } - ], + "name": "id", + "description": "A globally-unique ID.", + "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "ArticleConnection", + "kind": "SCALAR", + "name": "ID", "ofType": null } }, @@ -28238,146 +28755,95 @@ "deprecationReason": null }, { - "name": "blog", - "description": "Fetch a specific `Blog` by one of its unique attributes.", + "name": "metafield", + "description": "Returns a metafield found by namespace and key.", "args": [ { - "name": "id", - "description": "The ID of the `Blog`.", + "name": "namespace", + "description": "The container the metafield belongs to. If omitted, the app-reserved namespace will be used.", "type": { "kind": "SCALAR", - "name": "ID", + "name": "String", "ofType": null }, "defaultValue": null }, { - "name": "handle", - "description": "The handle of the `Blog`.", + "name": "key", + "description": "The identifier for the metafield.", "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } }, "defaultValue": null } ], "type": { "kind": "OBJECT", - "name": "Blog", + "name": "Metafield", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "blogByHandle", - "description": "Find a blog by its handle.", + "name": "metafields", + "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.", "args": [ { - "name": "handle", - "description": "The handle of the blog.", + "name": "identifiers", + "description": "The list of metafields to retrieve by namespace and key.\n\nThe input must not contain more than `250` values.", "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "HasMetafieldsIdentifier", + "ofType": null + } + } } }, "defaultValue": null } ], "type": { - "kind": "OBJECT", - "name": "Blog", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Metafield", + "ofType": null + } + } }, - "isDeprecated": true, - "deprecationReason": "Use `blog` instead." + "isDeprecated": false, + "deprecationReason": null }, { - "name": "blogs", - "description": "List of the shop's blogs.", - "args": [ - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "sortKey", - "description": "Sort the underlying list by the given key.", - "type": { - "kind": "ENUM", - "name": "BlogSortKeys", - "ofType": null - }, - "defaultValue": "ID" - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false" - }, - { - "name": "query", - "description": "Supported filter parameters:\n - `created_at`\n - `handle`\n - `title`\n - `updated_at`\n\nSee the detailed [search syntax](https://shopify.dev/api/usage/search-syntax)\nfor more information about using filters.\n", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - } - ], + "name": "name", + "description": "The name of the selling plan. For example, '6 weeks of prepaid granola, delivered weekly'.", + "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "BlogConnection", + "kind": "SCALAR", + "name": "String", "ofType": null } }, @@ -28385,330 +28851,254 @@ "deprecationReason": null }, { - "name": "cart", - "description": "Retrieve a cart by its ID. For more information, refer to\n[Manage a cart with the Storefront API](https://shopify.dev/custom-storefronts/cart/manage).\n", - "args": [ - { - "name": "id", - "description": "The ID of the cart.", - "type": { + "name": "options", + "description": "The selling plan options available in the drop-down list in the storefront. For example, 'Delivery every week' or 'Delivery every 2 weeks' specifies the delivery frequency options for the product. Individual selling plans contribute their options to the associated selling plan group. For example, a selling plan group might have an option called `option1: Delivery every`. One selling plan in that group could contribute `option1: 2 weeks` with the pricing for that option, and another selling plan could contribute `option1: 4 weeks`, with different pricing.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "ID", + "kind": "OBJECT", + "name": "SellingPlanOption", "ofType": null } - }, - "defaultValue": null + } } - ], - "type": { - "kind": "OBJECT", - "name": "Cart", - "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "cartCompletionAttempt", - "description": "A poll for the status of the cart checkout completion and order creation.\n", - "args": [ - { - "name": "attemptId", - "description": "The ID of the attempt.", - "type": { + "name": "priceAdjustments", + "description": "The price adjustments that a selling plan makes when a variant is purchased with a selling plan.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "SellingPlanPriceAdjustment", "ofType": null } - }, - "defaultValue": null + } } - ], - "type": { - "kind": "UNION", - "name": "CartCompletionAttemptResult", - "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "collection", - "description": "Fetch a specific `Collection` by one of its unique attributes.", - "args": [ - { - "name": "handle", - "description": "The handle of the `Collection`.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "id", - "description": "The ID of the `Collection`.", - "type": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - }, - "defaultValue": null + "name": "recurringDeliveries", + "description": "Whether purchasing the selling plan will result in multiple deliveries.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null } - ], + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "HasMetafields", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SellingPlanAllocation", + "description": "Represents an association between a variant and a selling plan. Selling plan allocations describe the options offered for each variant, and the price of the variant when purchased with a selling plan.", + "fields": [ + { + "name": "checkoutChargeAmount", + "description": "The checkout charge amount due for the purchase.", + "args": [], "type": { - "kind": "OBJECT", - "name": "Collection", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "MoneyV2", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "collectionByHandle", - "description": "Find a collection by its handle.", - "args": [ - { - "name": "handle", - "description": "The handle of the collection.", - "type": { + "name": "priceAdjustments", + "description": "A list of price adjustments, with a maximum of two. When there are two, the first price adjustment goes into effect at the time of purchase, while the second one starts after a certain number of orders. A price adjustment represents how a selling plan affects pricing when a variant is purchased with a selling plan. Prices display in the customer's currency if the shop is configured for it.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "SellingPlanAllocationPriceAdjustment", "ofType": null } - }, - "defaultValue": null + } } - ], - "type": { - "kind": "OBJECT", - "name": "Collection", - "ofType": null }, - "isDeprecated": true, - "deprecationReason": "Use `collection` instead." + "isDeprecated": false, + "deprecationReason": null }, { - "name": "collections", - "description": "List of the shop’s collections.", - "args": [ - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "sortKey", - "description": "Sort the underlying list by the given key.", - "type": { - "kind": "ENUM", - "name": "CollectionSortKeys", - "ofType": null - }, - "defaultValue": "ID" - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false" - }, - { - "name": "query", - "description": "Supported filter parameters:\n - `collection_type`\n - `title`\n - `updated_at`\n\nSee the detailed [search syntax](https://shopify.dev/api/usage/search-syntax)\nfor more information about using filters.\n", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null + "name": "remainingBalanceChargeAmount", + "description": "The remaining balance charge amount due for the purchase.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "MoneyV2", + "ofType": null } - ], + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "sellingPlan", + "description": "A representation of how products and variants can be sold and purchased. For example, an individual selling plan could be '6 weeks of prepaid granola, delivered weekly'.", + "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "OBJECT", - "name": "CollectionConnection", + "name": "SellingPlan", "ofType": null } }, "isDeprecated": false, "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SellingPlanAllocationConnection", + "description": "An auto-generated type for paginating through multiple SellingPlanAllocations.\n", + "fields": [ + { + "name": "edges", + "description": "A list of edges.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "SellingPlanAllocationEdge", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null }, { - "name": "customer", - "description": "The customer associated with the given access token. Tokens are obtained by using the\n[`customerAccessTokenCreate` mutation](https://shopify.dev/docs/api/storefront/latest/mutations/customerAccessTokenCreate).\n", - "args": [ - { - "name": "customerAccessToken", - "description": "The customer access token.", - "type": { + "name": "nodes", + "description": "A list of the nodes contained in SellingPlanAllocationEdge.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "SellingPlanAllocation", "ofType": null } - }, - "defaultValue": null + } } - ], - "type": { - "kind": "OBJECT", - "name": "Customer", - "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "localization", - "description": "Returns the localized experiences configured for the shop.", + "name": "pageInfo", + "description": "Information to aid in pagination.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "OBJECT", - "name": "Localization", + "name": "PageInfo", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SellingPlanAllocationEdge", + "description": "An auto-generated type which holds one SellingPlanAllocation and a cursor during pagination.\n", + "fields": [ { - "name": "locations", - "description": "List of the shop's locations that support in-store pickup.\n\nWhen sorting by distance, you must specify a location via the `near` argument.\n\n", - "args": [ - { - "name": "near", - "description": "Used to sort results based on proximity to the provided location.", - "type": { - "kind": "INPUT_OBJECT", - "name": "GeoCoordinateInput", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "sortKey", - "description": "Sort the underlying list by the given key.", - "type": { - "kind": "ENUM", - "name": "LocationSortKeys", - "ofType": null - }, - "defaultValue": "ID" - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false" - } - ], + "name": "cursor", + "description": "A cursor for use in pagination.", + "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "LocationConnection", + "kind": "SCALAR", + "name": "String", "ofType": null } }, @@ -28716,150 +29106,42 @@ "deprecationReason": null }, { - "name": "menu", - "description": "Retrieve a [navigation menu](https://help.shopify.com/manual/online-store/menus-and-links) by its handle.", - "args": [ - { - "name": "handle", - "description": "The navigation menu's handle.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - } - ], + "name": "node", + "description": "The item at the end of SellingPlanAllocationEdge.", + "args": [], "type": { - "kind": "OBJECT", - "name": "Menu", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metaobject", - "description": "Fetch a specific Metaobject by one of its unique identifiers.", - "args": [ - { - "name": "id", - "description": "The ID of the metaobject.", - "type": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "handle", - "description": "The handle and type of the metaobject.", - "type": { - "kind": "INPUT_OBJECT", - "name": "MetaobjectHandleInput", - "ofType": null - }, - "defaultValue": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "SellingPlanAllocation", + "ofType": null } - ], - "type": { - "kind": "OBJECT", - "name": "Metaobject", - "ofType": null }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SellingPlanAllocationPriceAdjustment", + "description": "The resulting prices for variants when they're purchased with a specific selling plan.", + "fields": [ { - "name": "metaobjects", - "description": "All active metaobjects for the shop.", - "args": [ - { - "name": "type", - "description": "The type of metaobject to retrieve.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "sortKey", - "description": "The key of a field to sort with. Supports \"id\" and \"updated_at\".", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false" - } - ], + "name": "compareAtPrice", + "description": "The price of the variant when it's purchased without a selling plan for the same number of deliveries. For example, if a customer purchases 6 deliveries of $10.00 granola separately, then the price is 6 x $10.00 = $60.00.", + "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "OBJECT", - "name": "MetaobjectConnection", + "name": "MoneyV2", "ofType": null } }, @@ -28867,216 +29149,86 @@ "deprecationReason": null }, { - "name": "node", - "description": "Returns a specific node by ID.", - "args": [ - { - "name": "id", - "description": "The ID of the Node to return.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "defaultValue": null - } - ], + "name": "perDeliveryPrice", + "description": "The effective price for a single delivery. For example, for a prepaid subscription plan that includes 6 deliveries at the price of $48.00, the per delivery price is $8.00.", + "args": [], "type": { - "kind": "INTERFACE", - "name": "Node", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "MoneyV2", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "nodes", - "description": "Returns the list of nodes with the given IDs.", - "args": [ - { - "name": "ids", - "description": "The IDs of the Nodes to return.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - } - } - }, - "defaultValue": null - } - ], + "name": "price", + "description": "The price of the variant when it's purchased with a selling plan For example, for a prepaid subscription plan that includes 6 deliveries of $10.00 granola, where the customer gets 20% off, the price is 6 x $10.00 x 0.80 = $48.00.", + "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "INTERFACE", - "name": "Node", - "ofType": null - } + "kind": "OBJECT", + "name": "MoneyV2", + "ofType": null } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "page", - "description": "Fetch a specific `Page` by one of its unique attributes.", - "args": [ - { - "name": "id", - "description": "The ID of the `Page`.", - "type": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "handle", - "description": "The handle of the `Page`.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - } - ], + "name": "unitPrice", + "description": "The resulting price per unit for the variant associated with the selling plan. If the variant isn't sold by quantity or measurement, then this field returns `null`.", + "args": [], "type": { "kind": "OBJECT", - "name": "Page", + "name": "MoneyV2", "ofType": null }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "UNION", + "name": "SellingPlanBillingPolicy", + "description": "The selling plan billing policy.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": [ { - "name": "pageByHandle", - "description": "Find a page by its handle.", - "args": [ - { - "name": "handle", - "description": "The handle of the page.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - } - ], - "type": { - "kind": "OBJECT", - "name": "Page", - "ofType": null - }, - "isDeprecated": true, - "deprecationReason": "Use `page` instead." - }, + "kind": "OBJECT", + "name": "SellingPlanRecurringBillingPolicy", + "ofType": null + } + ] + }, + { + "kind": "OBJECT", + "name": "SellingPlanCheckoutCharge", + "description": "The initial payment due for the purchase.", + "fields": [ { - "name": "pages", - "description": "List of the shop's pages.", - "args": [ - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "sortKey", - "description": "Sort the underlying list by the given key.", - "type": { - "kind": "ENUM", - "name": "PageSortKeys", - "ofType": null - }, - "defaultValue": "ID" - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false" - }, - { - "name": "query", - "description": "Supported filter parameters:\n - `created_at`\n - `handle`\n - `title`\n - `updated_at`\n\nSee the detailed [search syntax](https://shopify.dev/api/usage/search-syntax)\nfor more information about using filters.\n", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - } - ], + "name": "type", + "description": "The charge type for the checkout charge.", + "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "PageConnection", + "kind": "ENUM", + "name": "SellingPlanCheckoutChargeType", "ofType": null } }, @@ -29084,346 +29236,313 @@ "deprecationReason": null }, { - "name": "predictiveSearch", - "description": "List of the predictive search results.", - "args": [ - { - "name": "limit", - "description": "Limits the number of results based on `limit_scope`. The value can range from 1 to 10, and the default is 10.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "limitScope", - "description": "Decides the distribution of results.", - "type": { - "kind": "ENUM", - "name": "PredictiveSearchLimitScope", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "query", - "description": "The search query.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "searchableFields", - "description": "Specifies the list of resource fields to use for search. The default fields searched on are TITLE, PRODUCT_TYPE, VARIANT_TITLE, and VENDOR. For the best search experience, you should search on the default field set.", - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "SearchableField", - "ofType": null - } - } - }, - "defaultValue": null - }, - { - "name": "types", - "description": "The types of resources to search for.", - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "PredictiveSearchType", - "ofType": null - } - } - }, - "defaultValue": null - }, - { - "name": "unavailableProducts", - "description": "Specifies how unavailable products are displayed in the search results.", - "type": { - "kind": "ENUM", - "name": "SearchUnavailableProductsType", - "ofType": null - }, - "defaultValue": null - } - ], + "name": "value", + "description": "The charge value for the checkout charge.", + "args": [], "type": { - "kind": "OBJECT", - "name": "PredictiveSearchResult", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "UNION", + "name": "SellingPlanCheckoutChargeValue", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SellingPlanCheckoutChargePercentageValue", + "description": "The percentage value of the price used for checkout charge.", + "fields": [ { - "name": "product", - "description": "Fetch a specific `Product` by one of its unique attributes.", - "args": [ - { - "name": "handle", - "description": "The handle of the `Product`.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "id", - "description": "The ID of the `Product`.", - "type": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - }, - "defaultValue": null - } - ], + "name": "percentage", + "description": "The percentage value of the price used for checkout charge.", + "args": [], "type": { - "kind": "OBJECT", - "name": "Product", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Float", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "SellingPlanCheckoutChargeType", + "description": "The checkout charge when the full amount isn't charged at checkout.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "PERCENTAGE", + "description": "The checkout charge is a percentage of the product or variant price.", + "isDeprecated": false, + "deprecationReason": null }, { - "name": "productByHandle", - "description": "Find a product by its handle.", - "args": [ - { - "name": "handle", - "description": "A unique string that identifies the product. Handles are automatically\ngenerated based on the product's title, and are always lowercase. Whitespace\nand special characters are replaced with a hyphen: `-`. If there are\nmultiple consecutive whitespace or special characters, then they're replaced\nwith a single hyphen. Whitespace or special characters at the beginning are\nremoved. If a duplicate product title is used, then the handle is\nauto-incremented by one. For example, if you had two products called\n`Potion`, then their handles would be `potion` and `potion-1`. After a\nproduct has been created, changing the product title doesn't update the handle.\n", - "type": { + "name": "PRICE", + "description": "The checkout charge is a fixed price amount.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, + { + "kind": "UNION", + "name": "SellingPlanCheckoutChargeValue", + "description": "The portion of the price to be charged at checkout.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": [ + { + "kind": "OBJECT", + "name": "MoneyV2", + "ofType": null + }, + { + "kind": "OBJECT", + "name": "SellingPlanCheckoutChargePercentageValue", + "ofType": null + } + ] + }, + { + "kind": "OBJECT", + "name": "SellingPlanConnection", + "description": "An auto-generated type for paginating through multiple SellingPlans.\n", + "fields": [ + { + "name": "edges", + "description": "A list of edges.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "SellingPlanEdge", "ofType": null } - }, - "defaultValue": null + } } - ], - "type": { - "kind": "OBJECT", - "name": "Product", - "ofType": null }, - "isDeprecated": true, - "deprecationReason": "Use `product` instead." + "isDeprecated": false, + "deprecationReason": null }, { - "name": "productRecommendations", - "description": "Find recommended products related to a given `product_id`.\nTo learn more about how recommendations are generated, see\n[*Showing product recommendations on product pages*](https://help.shopify.com/themes/development/recommended-products).\n", - "args": [ - { - "name": "intent", - "description": "The recommendation intent that is used to generate product recommendations. You can use intent to generate product recommendations on various pages across the channels, according to different strategies.", - "type": { - "kind": "ENUM", - "name": "ProductRecommendationIntent", - "ofType": null - }, - "defaultValue": "RELATED" - }, - { - "name": "productId", - "description": "The id of the product.", - "type": { + "name": "nodes", + "description": "A list of the nodes contained in SellingPlanEdge.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "ID", + "kind": "OBJECT", + "name": "SellingPlan", "ofType": null } - }, - "defaultValue": null + } } - ], + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "pageInfo", + "description": "Information to aid in pagination.", + "args": [], "type": { - "kind": "LIST", + "kind": "NON_NULL", "name": null, "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Product", - "ofType": null - } + "kind": "OBJECT", + "name": "PageInfo", + "ofType": null } }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "UNION", + "name": "SellingPlanDeliveryPolicy", + "description": "The selling plan delivery policy.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": [ { - "name": "productTags", - "description": "Tags added to products.\nAdditional access scope required: unauthenticated_read_product_tags.\n", - "args": [ - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - } - }, - "defaultValue": null + "kind": "OBJECT", + "name": "SellingPlanRecurringDeliveryPolicy", + "ofType": null + } + ] + }, + { + "kind": "OBJECT", + "name": "SellingPlanEdge", + "description": "An auto-generated type which holds one SellingPlan and a cursor during pagination.\n", + "fields": [ + { + "name": "cursor", + "description": "A cursor for use in pagination.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null } - ], + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "node", + "description": "The item at the end of SellingPlanEdge.", + "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "OBJECT", - "name": "StringConnection", + "name": "SellingPlan", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SellingPlanFixedAmountPriceAdjustment", + "description": "A fixed amount that's deducted from the original variant price. For example, $10.00 off.", + "fields": [ { - "name": "productTypes", - "description": "List of product types for the shop's products that are published to your app.", - "args": [ - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - } - }, - "defaultValue": null + "name": "adjustmentAmount", + "description": "The money value of the price adjustment.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "MoneyV2", + "ofType": null } - ], + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SellingPlanFixedPriceAdjustment", + "description": "A fixed price adjustment for a variant that's purchased with a selling plan.", + "fields": [ + { + "name": "price", + "description": "A new price of the variant when it's purchased with the selling plan.", + "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "OBJECT", - "name": "StringConnection", + "name": "MoneyV2", "ofType": null } }, "isDeprecated": false, "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SellingPlanGroup", + "description": "Represents a selling method. For example, 'Subscribe and save' is a selling method where customers pay for goods or services per delivery. A selling plan group contains individual selling plans.", + "fields": [ + { + "name": "appName", + "description": "A display friendly name for the app that created the selling plan group.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null }, { - "name": "products", - "description": "List of the shop’s products.", - "args": [ - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "sortKey", - "description": "Sort the underlying list by the given key.", - "type": { - "kind": "ENUM", - "name": "ProductSortKeys", - "ofType": null - }, - "defaultValue": "ID" - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false" - }, - { - "name": "query", - "description": "Supported filter parameters:\n - `available_for_sale`\n - `created_at`\n - `product_type`\n - `tag`\n - `tag_not`\n - `title`\n - `updated_at`\n - `variants.price`\n - `vendor`\n\nSee the detailed [search syntax](https://shopify.dev/api/usage/search-syntax)\nfor more information about using filters.\n", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - } - ], + "name": "name", + "description": "The name of the selling plan group.", + "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "ProductConnection", + "kind": "SCALAR", + "name": "String", "ofType": null } }, @@ -29431,8 +29550,8 @@ "deprecationReason": null }, { - "name": "publicApiVersions", - "description": "The list of public Storefront API versions, including supported, release candidate and unstable versions.", + "name": "options", + "description": "Represents the selling plan options available in the drop-down list in the storefront. For example, 'Delivery every week' or 'Delivery every 2 weeks' specifies the delivery frequency options for the product.", "args": [], "type": { "kind": "NON_NULL", @@ -29445,7 +29564,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "ApiVersion", + "name": "SellingPlanGroupOption", "ofType": null } } @@ -29455,47 +29574,9 @@ "deprecationReason": null }, { - "name": "search", - "description": "List of the search results.", + "name": "sellingPlans", + "description": "A list of selling plans in a selling plan group. A selling plan is a representation of how products and variants can be sold and purchased. For example, an individual selling plan could be '6 weeks of prepaid granola, delivered weekly'.", "args": [ - { - "name": "prefix", - "description": "Specifies whether to perform a partial word match on the last search term.", - "type": { - "kind": "ENUM", - "name": "SearchPrefixQueryType", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "types", - "description": "The types of resources to search for.", - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "SearchType", - "ofType": null - } - } - }, - "defaultValue": null - }, - { - "name": "unavailableProducts", - "description": "Specifies how unavailable products are displayed in the search results.", - "type": { - "kind": "ENUM", - "name": "SearchUnavailableProductsType", - "ofType": null - }, - "defaultValue": null - }, { "name": "first", "description": "Returns up to the first `n` elements from the list.", @@ -29536,16 +29617,6 @@ }, "defaultValue": null }, - { - "name": "sortKey", - "description": "Sort the underlying list by the given key.", - "type": { - "kind": "ENUM", - "name": "SearchSortKeys", - "ofType": null - }, - "defaultValue": "RELEVANCE" - }, { "name": "reverse", "description": "Reverse the order of the underlying list.", @@ -29555,38 +29626,6 @@ "ofType": null }, "defaultValue": "false" - }, - { - "name": "query", - "description": "The search query.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "productFilters", - "description": "Returns a subset of products matching all product filters.", - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "ProductFilter", - "ofType": null - } - } - }, - "defaultValue": null } ], "type": { @@ -29594,137 +29633,84 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "SearchResultItemConnection", + "name": "SellingPlanConnection", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SellingPlanGroupConnection", + "description": "An auto-generated type for paginating through multiple SellingPlanGroups.\n", + "fields": [ { - "name": "shop", - "description": "The shop associated with the storefront access token.", + "name": "edges", + "description": "A list of edges.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "Shop", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "SellingPlanGroupEdge", + "ofType": null + } + } } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "urlRedirects", - "description": "A list of redirects for a shop.", - "args": [ - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false" - }, - { - "name": "query", - "description": "Supported filter parameters:\n - `created_at`\n - `path`\n - `target`\n\nSee the detailed [search syntax](https://shopify.dev/api/usage/search-syntax)\nfor more information about using filters.\n", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - } - ], + "name": "nodes", + "description": "A list of the nodes contained in SellingPlanGroupEdge.", + "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "UrlRedirectConnection", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "SellingPlanGroup", + "ofType": null + } + } } }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SEO", - "description": "SEO information.", - "fields": [ - { - "name": "description", - "description": "The meta description.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null }, { - "name": "title", - "description": "The SEO title.", + "name": "pageInfo", + "description": "Information to aid in pagination.", "args": [], "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "PageInfo", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null @@ -29737,35 +29723,19 @@ }, { "kind": "OBJECT", - "name": "ScriptDiscountApplication", - "description": "Script discount applications capture the intentions of a discount that\nwas created by a Shopify Script.\n", + "name": "SellingPlanGroupEdge", + "description": "An auto-generated type which holds one SellingPlanGroup and a cursor during pagination.\n", "fields": [ { - "name": "allocationMethod", - "description": "The method by which the discount's value is allocated to its entitled items.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "DiscountApplicationAllocationMethod", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "targetSelection", - "description": "Which lines of targetType that the discount is allocated over.", + "name": "cursor", + "description": "A cursor for use in pagination.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "ENUM", - "name": "DiscountApplicationTargetSelection", + "kind": "SCALAR", + "name": "String", "ofType": null } }, @@ -29773,24 +29743,35 @@ "deprecationReason": null }, { - "name": "targetType", - "description": "The type of line that the discount is applicable towards.", + "name": "node", + "description": "The item at the end of SellingPlanGroupEdge.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "ENUM", - "name": "DiscountApplicationTargetType", + "kind": "OBJECT", + "name": "SellingPlanGroup", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SellingPlanGroupOption", + "description": "Represents an option on a selling plan group that's available in the drop-down list in the storefront.\n\nIndividual selling plans contribute their options to the associated selling plan group. For example, a selling plan group might have an option called `option1: Delivery every`. One selling plan in that group could contribute `option1: 2 weeks` with the pricing for that option, and another selling plan could contribute `option1: 4 weeks`, with different pricing.", + "fields": [ { - "name": "title", - "description": "The title of the application as defined by the Script.", + "name": "name", + "description": "The name of the option. For example, 'Delivery every'.", "args": [], "type": { "kind": "NON_NULL", @@ -29805,16 +29786,24 @@ "deprecationReason": null }, { - "name": "value", - "description": "The value of the discount application.", + "name": "values", + "description": "The values for the options specified by the selling plans in the selling plan group. For example, '1 week', '2 weeks', '3 weeks'.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "UNION", - "name": "PricingValue", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } } }, "isDeprecated": false, @@ -29822,33 +29811,39 @@ } ], "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "DiscountApplication", - "ofType": null - } - ], + "interfaces": [], "enumValues": null, "possibleTypes": null }, { "kind": "ENUM", - "name": "SearchPrefixQueryType", - "description": "Specifies whether to perform a partial word match on the last search term.", + "name": "SellingPlanInterval", + "description": "Represents a valid selling plan interval.", "fields": null, "inputFields": null, "interfaces": null, "enumValues": [ { - "name": "LAST", - "description": "Perform a partial word match on the last search term.", + "name": "DAY", + "description": "Day interval.", "isDeprecated": false, "deprecationReason": null }, { - "name": "NONE", - "description": "Don't perform a partial word match on the last search term.", + "name": "MONTH", + "description": "Month interval.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "WEEK", + "description": "Week interval.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "YEAR", + "description": "Year interval.", "isDeprecated": false, "deprecationReason": null } @@ -29857,35 +29852,81 @@ }, { "kind": "OBJECT", - "name": "SearchQuerySuggestion", - "description": "A search query suggestion.", + "name": "SellingPlanOption", + "description": "An option provided by a Selling Plan.", "fields": [ { - "name": "styledText", - "description": "The text of the search query suggestion with highlighted HTML tags.", + "name": "name", + "description": "The name of the option (ie \"Delivery every\").", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "value", + "description": "The value of the option (ie \"Month\").", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SellingPlanPercentagePriceAdjustment", + "description": "A percentage amount that's deducted from the original variant price. For example, 10% off.", + "fields": [ + { + "name": "adjustmentPercentage", + "description": "The percentage value of the price adjustment.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "String", + "name": "Int", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "SellingPlanPriceAdjustment", + "description": "Represents by how much the price of a variant associated with a selling plan is adjusted. Each variant can have up to two price adjustments. If a variant has multiple price adjustments, then the first price adjustment applies when the variant is initially purchased. The second price adjustment applies after a certain number of orders (specified by the `orderCount` field) are made. If a selling plan doesn't have any price adjustments, then the unadjusted price of the variant is the effective price.", + "fields": [ { - "name": "text", - "description": "The text of the search query suggestion.", + "name": "adjustmentValue", + "description": "The type of price adjustment. An adjustment value can have one of three types: percentage, amount off, or a new price.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "UNION", + "name": "SellingPlanPriceAdjustmentValue", "ofType": null } }, @@ -29893,12 +29934,12 @@ "deprecationReason": null }, { - "name": "trackingParameters", - "description": "A URL parameters to be added to a page URL when it is linked from a GraphQL result. This allows for tracking the origin of the traffic.", + "name": "orderCount", + "description": "The number of orders that the price adjustment applies to. If the price adjustment always applies, then this field is `null`.", "args": [], "type": { "kind": "SCALAR", - "name": "String", + "name": "Int", "ofType": null }, "isDeprecated": false, @@ -29906,20 +29947,14 @@ } ], "inputFields": null, - "interfaces": [ - { - "kind": "INTERFACE", - "name": "Trackable", - "ofType": null - } - ], + "interfaces": [], "enumValues": null, "possibleTypes": null }, { "kind": "UNION", - "name": "SearchResultItem", - "description": "A search result that matches the search query.\n", + "name": "SellingPlanPriceAdjustmentValue", + "description": "Represents by how much the price of a variant associated with a selling plan is adjusted. Each variant can have up to two price adjustments.", "fields": null, "inputFields": null, "interfaces": null, @@ -29927,117 +29962,45 @@ "possibleTypes": [ { "kind": "OBJECT", - "name": "Article", + "name": "SellingPlanFixedAmountPriceAdjustment", "ofType": null }, { "kind": "OBJECT", - "name": "Page", + "name": "SellingPlanFixedPriceAdjustment", "ofType": null }, { "kind": "OBJECT", - "name": "Product", + "name": "SellingPlanPercentagePriceAdjustment", "ofType": null } ] }, { "kind": "OBJECT", - "name": "SearchResultItemConnection", - "description": "An auto-generated type for paginating through multiple SearchResultItems.\n", + "name": "SellingPlanRecurringBillingPolicy", + "description": "The recurring billing policy for the selling plan.", "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SearchResultItemEdge", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of the nodes contained in SearchResultItemEdge.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "UNION", - "name": "SearchResultItem", - "ofType": null - } - } - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "productFilters", - "description": "A list of available filters.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Filter", - "ofType": null - } - } + { + "name": "interval", + "description": "The billing frequency, it can be either: day, week, month or year.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "SellingPlanInterval", + "ofType": null } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "totalCount", - "description": "The total number of results.", + "name": "intervalCount", + "description": "The number of intervals between billings.", "args": [], "type": { "kind": "NON_NULL", @@ -30059,19 +30022,19 @@ }, { "kind": "OBJECT", - "name": "SearchResultItemEdge", - "description": "An auto-generated type which holds one SearchResultItem and a cursor during pagination.\n", + "name": "SellingPlanRecurringDeliveryPolicy", + "description": "The recurring delivery policy for the selling plan.", "fields": [ { - "name": "cursor", - "description": "A cursor for use in pagination.", + "name": "interval", + "description": "The delivery frequency, it can be either: day, week, month or year.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "ENUM", + "name": "SellingPlanInterval", "ofType": null } }, @@ -30079,15 +30042,15 @@ "deprecationReason": null }, { - "name": "node", - "description": "The item at the end of SearchResultItemEdge.", + "name": "intervalCount", + "description": "The number of intervals between deliveries.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "UNION", - "name": "SearchResultItem", + "kind": "SCALAR", + "name": "Int", "ofType": null } }, @@ -30101,248 +30064,402 @@ "possibleTypes": null }, { - "kind": "ENUM", - "name": "SearchSortKeys", - "description": "The set of valid sort keys for the search query.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ + "kind": "OBJECT", + "name": "Shop", + "description": "Shop represents a collection of the general settings and information about the shop.", + "fields": [ { - "name": "PRICE", - "description": "Sort by the `price` value.", + "name": "brand", + "description": "The shop's branding configuration.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "Brand", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "RELEVANCE", - "description": "Sort by relevance to the search terms.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "SearchType", - "description": "The types of search items to perform search within.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "PRODUCT", - "description": "Returns matching products.", + "name": "description", + "description": "A description of the shop.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "PAGE", - "description": "Returns matching pages.", + "name": "id", + "description": "A globally-unique ID.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "ARTICLE", - "description": "Returns matching articles.", + "name": "metafield", + "description": "Returns a metafield found by namespace and key.", + "args": [ + { + "name": "namespace", + "description": "The container the metafield belongs to. If omitted, the app-reserved namespace will be used.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "key", + "description": "The identifier for the metafield.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + } + ], + "type": { + "kind": "OBJECT", + "name": "Metafield", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "SearchUnavailableProductsType", - "description": "Specifies whether to display results for unavailable products.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ + }, { - "name": "SHOW", - "description": "Show unavailable products in the order that they're found.", + "name": "metafields", + "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.", + "args": [ + { + "name": "identifiers", + "description": "The list of metafields to retrieve by namespace and key.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "HasMetafieldsIdentifier", + "ofType": null + } + } + } + }, + "defaultValue": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Metafield", + "ofType": null + } + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "HIDE", - "description": "Exclude unavailable products.", + "name": "moneyFormat", + "description": "A string representing the way currency is formatted when the currency isn’t specified.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "LAST", - "description": "Show unavailable products after all other matching results. This is the default.", + "name": "name", + "description": "The shop’s name.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "SearchableField", - "description": "Specifies the list of resource fields to search.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ + }, { - "name": "AUTHOR", - "description": "Author of the page or article.", + "name": "paymentSettings", + "description": "Settings related to payments.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "PaymentSettings", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "BODY", - "description": "Body of the page or article or product description or collection description.", + "name": "primaryDomain", + "description": "The primary domain of the shop’s Online Store.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Domain", + "ofType": null + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "PRODUCT_TYPE", - "description": "Product type.", + "name": "privacyPolicy", + "description": "The shop’s privacy policy.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "ShopPolicy", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "TAG", - "description": "Tag associated with the product or article.", + "name": "refundPolicy", + "description": "The shop’s refund policy.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "ShopPolicy", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "TITLE", - "description": "Title of the page or article or product title or collection title.", + "name": "shippingPolicy", + "description": "The shop’s shipping policy.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "ShopPolicy", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "VARIANTS_BARCODE", - "description": "Variant barcode.", + "name": "shipsToCountries", + "description": "Countries that the shop ships to.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "CountryCode", + "ofType": null + } + } + } + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "VARIANTS_SKU", - "description": "Variant SKU.", + "name": "subscriptionPolicy", + "description": "The shop’s subscription policy.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "ShopPolicyWithDefault", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null }, { - "name": "VARIANTS_TITLE", - "description": "Variant title.", + "name": "termsOfService", + "description": "The shop’s terms of service.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "ShopPolicy", + "ofType": null + }, "isDeprecated": false, "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "HasMetafields", + "ofType": null }, { - "name": "VENDOR", - "description": "Product vendor.", - "isDeprecated": false, - "deprecationReason": null + "kind": "INTERFACE", + "name": "Node", + "ofType": null } ], + "enumValues": null, "possibleTypes": null }, { "kind": "OBJECT", - "name": "SelectedOption", - "description": "Properties used by customers to select a product variant.\nProducts can have multiple options, like different sizes or colors.\n", + "name": "ShopPayPaymentRequest", + "description": "Represents a Shop Pay payment request.", "fields": [ { - "name": "name", - "description": "The product option’s name.", + "name": "deliveryMethods", + "description": "The delivery methods for the payment request.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "ShopPayPaymentRequestDeliveryMethod", + "ofType": null + } + } } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "value", - "description": "The product option’s value.", + "name": "discountCodes", + "description": "The discount codes for the payment request.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } } }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "SelectedOptionInput", - "description": "The input fields required for a selected option.", - "fields": null, - "inputFields": [ + }, { - "name": "name", - "description": "The product option’s name.", + "name": "discounts", + "description": "The discounts for the payment request order.", + "args": [], "type": { - "kind": "NON_NULL", + "kind": "LIST", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "ShopPayPaymentRequestDiscount", + "ofType": null + } } }, - "defaultValue": null + "isDeprecated": false, + "deprecationReason": null }, { - "name": "value", - "description": "The product option’s value.", + "name": "lineItems", + "description": "The line items for the payment request.", + "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "ShopPayPaymentRequestLineItem", + "ofType": null + } + } } }, - "defaultValue": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlan", - "description": "Represents how products and variants can be sold and purchased.", - "fields": [ + "isDeprecated": false, + "deprecationReason": null + }, { - "name": "checkoutCharge", - "description": "The initial payment due for the purchase.", + "name": "locale", + "description": "The locale for the payment request.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "SellingPlanCheckoutCharge", + "kind": "SCALAR", + "name": "String", "ofType": null } }, @@ -30350,27 +30467,31 @@ "deprecationReason": null }, { - "name": "description", - "description": "The description of the selling plan.", + "name": "presentmentCurrency", + "description": "The presentment currency for the payment request.", "args": [], "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "ENUM", + "name": "CurrencyCode", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "id", - "description": "A globally-unique ID.", + "name": "selectedDeliveryMethodType", + "description": "The delivery method type for the payment request.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "ID", + "kind": "ENUM", + "name": "ShopPayPaymentRequestDeliveryMethodType", "ofType": null } }, @@ -30378,24 +30499,20 @@ "deprecationReason": null }, { - "name": "name", - "description": "The name of the selling plan. For example, '6 weeks of prepaid granola, delivered weekly'.", + "name": "shippingAddress", + "description": "The shipping address for the payment request.", "args": [], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } + "kind": "OBJECT", + "name": "ShopPayPaymentRequestContactField", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "options", - "description": "The selling plan options available in the drop-down list in the storefront. For example, 'Delivery every week' or 'Delivery every 2 weeks' specifies the delivery frequency options for the product. Individual selling plans contribute their options to the associated selling plan group. For example, a selling plan group might have an option called `option1: Delivery every`. One selling plan in that group could contribute `option1: 2 weeks` with the pricing for that option, and another selling plan could contribute `option1: 4 weeks`, with different pricing.", + "name": "shippingLines", + "description": "The shipping lines for the payment request.", "args": [], "type": { "kind": "NON_NULL", @@ -30408,7 +30525,7 @@ "name": null, "ofType": { "kind": "OBJECT", - "name": "SellingPlanOption", + "name": "ShopPayPaymentRequestShippingLine", "ofType": null } } @@ -30418,44 +30535,60 @@ "deprecationReason": null }, { - "name": "priceAdjustments", - "description": "The price adjustments that a selling plan makes when a variant is purchased with a selling plan.", + "name": "subtotal", + "description": "The subtotal amount for the payment request.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanPriceAdjustment", - "ofType": null - } - } + "kind": "OBJECT", + "name": "MoneyV2", + "ofType": null } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "recurringDeliveries", - "description": "Whether purchasing the selling plan will result in multiple deliveries.", + "name": "total", + "description": "The total amount for the payment request.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "Boolean", + "kind": "OBJECT", + "name": "MoneyV2", "ofType": null } }, "isDeprecated": false, "deprecationReason": null + }, + { + "name": "totalShippingPrice", + "description": "The total shipping price for the payment request.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "ShopPayPaymentRequestTotalShippingPrice", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "totalTax", + "description": "The total tax for the payment request.", + "args": [], + "type": { + "kind": "OBJECT", + "name": "MoneyV2", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null } ], "inputFields": null, @@ -30465,19 +30598,19 @@ }, { "kind": "OBJECT", - "name": "SellingPlanAllocation", - "description": "Represents an association between a variant and a selling plan. Selling plan allocations describe the options offered for each variant, and the price of the variant when purchased with a selling plan.", + "name": "ShopPayPaymentRequestContactField", + "description": "Represents a contact field for a Shop Pay payment request.", "fields": [ { - "name": "checkoutChargeAmount", - "description": "The checkout charge amount due for the purchase.", + "name": "address1", + "description": "The first address line of the contact field.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", + "kind": "SCALAR", + "name": "String", "ofType": null } }, @@ -30485,39 +30618,27 @@ "deprecationReason": null }, { - "name": "priceAdjustments", - "description": "A list of price adjustments, with a maximum of two. When there are two, the first price adjustment goes into effect at the time of purchase, while the second one starts after a certain number of orders. A price adjustment represents how a selling plan affects pricing when a variant is purchased with a selling plan. Prices display in the customer's currency if the shop is configured for it.", + "name": "address2", + "description": "The second address line of the contact field.", "args": [], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanAllocationPriceAdjustment", - "ofType": null - } - } - } + "kind": "SCALAR", + "name": "String", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "remainingBalanceChargeAmount", - "description": "The remaining balance charge amount due for the purchase.", + "name": "city", + "description": "The city of the contact field.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", + "kind": "SCALAR", + "name": "String", "ofType": null } }, @@ -30525,110 +30646,64 @@ "deprecationReason": null }, { - "name": "sellingPlan", - "description": "A representation of how products and variants can be sold and purchased. For example, an individual selling plan could be '6 weeks of prepaid granola, delivered weekly'.", + "name": "companyName", + "description": "The company name of the contact field.", "args": [], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlan", - "ofType": null - } + "kind": "SCALAR", + "name": "String", + "ofType": null }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanAllocationConnection", - "description": "An auto-generated type for paginating through multiple SellingPlanAllocations.\n", - "fields": [ + }, { - "name": "edges", - "description": "A list of edges.", + "name": "countryCode", + "description": "The country of the contact field.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanAllocationEdge", - "ofType": null - } - } + "kind": "SCALAR", + "name": "String", + "ofType": null } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "nodes", - "description": "A list of the nodes contained in SellingPlanAllocationEdge.", + "name": "email", + "description": "The email of the contact field.", "args": [], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanAllocation", - "ofType": null - } - } - } + "kind": "SCALAR", + "name": "String", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "pageInfo", - "description": "Information to aid in pagination.", + "name": "firstName", + "description": "The first name of the contact field.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "PageInfo", + "kind": "SCALAR", + "name": "String", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanAllocationEdge", - "description": "An auto-generated type which holds one SellingPlanAllocation and a cursor during pagination.\n", - "fields": [ + }, { - "name": "cursor", - "description": "A cursor for use in pagination.", + "name": "lastName", + "description": "The first name of the contact field.", "args": [], "type": { "kind": "NON_NULL", @@ -30643,17 +30718,37 @@ "deprecationReason": null }, { - "name": "node", - "description": "The item at the end of SellingPlanAllocationEdge.", + "name": "phone", + "description": "The phone number of the contact field.", "args": [], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanAllocation", - "ofType": null - } + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "postalCode", + "description": "The postal code of the contact field.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "provinceCode", + "description": "The province of the contact field.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null }, "isDeprecated": false, "deprecationReason": null @@ -30666,12 +30761,12 @@ }, { "kind": "OBJECT", - "name": "SellingPlanAllocationPriceAdjustment", - "description": "The resulting prices for variants when they're purchased with a specific selling plan.", + "name": "ShopPayPaymentRequestDeliveryMethod", + "description": "Represents a delivery method for a Shop Pay payment request.", "fields": [ { - "name": "compareAtPrice", - "description": "The price of the variant when it's purchased without a selling plan for the same number of deliveries. For example, if a customer purchases 6 deliveries of $10.00 granola separately, then the price is 6 x $10.00 = $60.00.", + "name": "amount", + "description": "The amount for the delivery method.", "args": [], "type": { "kind": "NON_NULL", @@ -30686,15 +30781,15 @@ "deprecationReason": null }, { - "name": "perDeliveryPrice", - "description": "The effective price for a single delivery. For example, for a prepaid subscription plan that includes 6 deliveries at the price of $48.00, the per delivery price is $8.00.", + "name": "code", + "description": "The code of the delivery method.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", + "kind": "SCALAR", + "name": "String", "ofType": null } }, @@ -30702,15 +30797,39 @@ "deprecationReason": null }, { - "name": "price", - "description": "The price of the variant when it's purchased with a selling plan For example, for a prepaid subscription plan that includes 6 deliveries of $10.00 granola, where the customer gets 20% off, the price is 6 x $10.00 x 0.80 = $48.00.", + "name": "deliveryExpectationLabel", + "description": "The detail about when the delivery may be expected.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "detail", + "description": "The detail of the delivery method.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "label", + "description": "The label of the delivery method.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", + "kind": "SCALAR", + "name": "String", "ofType": null } }, @@ -30718,12 +30837,24 @@ "deprecationReason": null }, { - "name": "unitPrice", - "description": "The resulting price per unit for the variant associated with the selling plan. If the variant isn't sold by quantity or measurement, then this field returns `null`.", + "name": "maxDeliveryDate", + "description": "The maximum delivery date for the delivery method.", "args": [], "type": { - "kind": "OBJECT", - "name": "MoneyV2", + "kind": "SCALAR", + "name": "ISO8601DateTime", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "minDeliveryDate", + "description": "The minimum delivery date for the delivery method.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "ISO8601DateTime", "ofType": null }, "isDeprecated": false, @@ -30735,21 +30866,125 @@ "enumValues": null, "possibleTypes": null }, + { + "kind": "INPUT_OBJECT", + "name": "ShopPayPaymentRequestDeliveryMethodInput", + "description": "The input fields to create a delivery method for a Shop Pay payment request.", + "fields": null, + "inputFields": [ + { + "name": "code", + "description": "The code of the delivery method.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "label", + "description": "The label of the delivery method.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "detail", + "description": "The detail of the delivery method.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "amount", + "description": "The amount for the delivery method.", + "type": { + "kind": "INPUT_OBJECT", + "name": "MoneyInput", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "minDeliveryDate", + "description": "The minimum delivery date for the delivery method.", + "type": { + "kind": "SCALAR", + "name": "ISO8601DateTime", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "maxDeliveryDate", + "description": "The maximum delivery date for the delivery method.", + "type": { + "kind": "SCALAR", + "name": "ISO8601DateTime", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "deliveryExpectationLabel", + "description": "The detail about when the delivery may be expected.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "ShopPayPaymentRequestDeliveryMethodType", + "description": "Represents the delivery method type for a Shop Pay payment request.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "SHIPPING", + "description": "The delivery method type is shipping.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "PICKUP", + "description": "The delivery method type is pickup.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, { "kind": "OBJECT", - "name": "SellingPlanCheckoutCharge", - "description": "The initial payment due for the purchase.", + "name": "ShopPayPaymentRequestDiscount", + "description": "Represents a discount for a Shop Pay payment request.", "fields": [ { - "name": "type", - "description": "The charge type for the checkout charge.", + "name": "amount", + "description": "The amount of the discount.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "ENUM", - "name": "SellingPlanCheckoutChargeType", + "kind": "OBJECT", + "name": "MoneyV2", "ofType": null } }, @@ -30757,15 +30992,15 @@ "deprecationReason": null }, { - "name": "value", - "description": "The charge value for the checkout charge.", + "name": "label", + "description": "The label of the discount.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "UNION", - "name": "SellingPlanCheckoutChargeValue", + "kind": "SCALAR", + "name": "String", "ofType": null } }, @@ -30778,21 +31013,64 @@ "enumValues": null, "possibleTypes": null }, + { + "kind": "INPUT_OBJECT", + "name": "ShopPayPaymentRequestDiscountInput", + "description": "The input fields to create a discount for a Shop Pay payment request.", + "fields": null, + "inputFields": [ + { + "name": "label", + "description": "The label of the discount.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "amount", + "description": "The amount of the discount.", + "type": { + "kind": "INPUT_OBJECT", + "name": "MoneyInput", + "ofType": null + }, + "defaultValue": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, { "kind": "OBJECT", - "name": "SellingPlanCheckoutChargePercentageValue", - "description": "The percentage value of the price used for checkout charge.", + "name": "ShopPayPaymentRequestImage", + "description": "Represents an image for a Shop Pay payment request line item.", "fields": [ { - "name": "percentage", - "description": "The percentage value of the price used for checkout charge.", + "name": "alt", + "description": "The alt text of the image.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "url", + "description": "The source URL of the image.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "Float", + "name": "String", "ofType": null } }, @@ -30806,133 +31084,197 @@ "possibleTypes": null }, { - "kind": "ENUM", - "name": "SellingPlanCheckoutChargeType", - "description": "The checkout charge when the full amount isn't charged at checkout.", + "kind": "INPUT_OBJECT", + "name": "ShopPayPaymentRequestImageInput", + "description": "The input fields to create an image for a Shop Pay payment request.", "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ + "inputFields": [ { - "name": "PERCENTAGE", - "description": "The checkout charge is a percentage of the product or variant price.", - "isDeprecated": false, - "deprecationReason": null + "name": "url", + "description": "The source URL of the image.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null }, { - "name": "PRICE", - "description": "The checkout charge is a fixed price amount.", - "isDeprecated": false, - "deprecationReason": null + "name": "alt", + "description": "The alt text of the image.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null } ], + "interfaces": null, + "enumValues": null, "possibleTypes": null }, { - "kind": "UNION", - "name": "SellingPlanCheckoutChargeValue", - "description": "The portion of the price to be charged at checkout.", + "kind": "INPUT_OBJECT", + "name": "ShopPayPaymentRequestInput", + "description": "The input fields represent a Shop Pay payment request.", "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": [ + "inputFields": [ { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null + "name": "discountCodes", + "description": "The discount codes for the payment request.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + }, + "defaultValue": null }, { - "kind": "OBJECT", - "name": "SellingPlanCheckoutChargePercentageValue", - "ofType": null - } - ] - }, - { - "kind": "OBJECT", - "name": "SellingPlanConnection", - "description": "An auto-generated type for paginating through multiple SellingPlans.\n", - "fields": [ + "name": "lineItems", + "description": "The line items for the payment request.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "ShopPayPaymentRequestLineItemInput", + "ofType": null + } + } + }, + "defaultValue": null + }, { - "name": "edges", - "description": "A list of edges.", - "args": [], + "name": "shippingLines", + "description": "The shipping lines for the payment request.\n\nThe input must not contain more than `250` values.", "type": { - "kind": "NON_NULL", + "kind": "LIST", "name": null, "ofType": { - "kind": "LIST", + "kind": "NON_NULL", "name": null, "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanEdge", - "ofType": null - } + "kind": "INPUT_OBJECT", + "name": "ShopPayPaymentRequestShippingLineInput", + "ofType": null } } }, - "isDeprecated": false, - "deprecationReason": null + "defaultValue": null }, { - "name": "nodes", - "description": "A list of the nodes contained in SellingPlanEdge.", - "args": [], + "name": "total", + "description": "The total amount for the payment request.", "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "LIST", + "kind": "INPUT_OBJECT", + "name": "MoneyInput", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "subtotal", + "description": "The subtotal amount for the payment request.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "MoneyInput", + "ofType": null + } + }, + "defaultValue": null + }, + { + "name": "discounts", + "description": "The discounts for the payment request order.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", "name": null, "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlan", - "ofType": null - } + "kind": "INPUT_OBJECT", + "name": "ShopPayPaymentRequestDiscountInput", + "ofType": null } } }, - "isDeprecated": false, - "deprecationReason": null + "defaultValue": null + }, + { + "name": "totalShippingPrice", + "description": "The total shipping price for the payment request.", + "type": { + "kind": "INPUT_OBJECT", + "name": "ShopPayPaymentRequestTotalShippingPriceInput", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "totalTax", + "description": "The total tax for the payment request.", + "type": { + "kind": "INPUT_OBJECT", + "name": "MoneyInput", + "ofType": null + }, + "defaultValue": null }, { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [], + "name": "deliveryMethods", + "description": "The delivery methods for the payment request.\n\nThe input must not contain more than `250` values.", "type": { - "kind": "NON_NULL", + "kind": "LIST", "name": null, "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "ShopPayPaymentRequestDeliveryMethodInput", + "ofType": null + } } }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanEdge", - "description": "An auto-generated type which holds one SellingPlan and a cursor during pagination.\n", - "fields": [ + "defaultValue": null + }, { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [], + "name": "selectedDeliveryMethodType", + "description": "The delivery method type for the payment request.", + "type": { + "kind": "ENUM", + "name": "ShopPayPaymentRequestDeliveryMethodType", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "locale", + "description": "The locale for the payment request.", "type": { "kind": "NON_NULL", "name": null, @@ -30942,39 +31284,45 @@ "ofType": null } }, - "isDeprecated": false, - "deprecationReason": null + "defaultValue": null }, { - "name": "node", - "description": "The item at the end of SellingPlanEdge.", - "args": [], + "name": "presentmentCurrency", + "description": "The presentment currency for the payment request.", "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "SellingPlan", + "kind": "ENUM", + "name": "CurrencyCode", "ofType": null } }, - "isDeprecated": false, - "deprecationReason": null + "defaultValue": null + }, + { + "name": "paymentMethod", + "description": "The encrypted payment method for the payment request.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null } ], - "inputFields": null, - "interfaces": [], + "interfaces": null, "enumValues": null, "possibleTypes": null }, { "kind": "OBJECT", - "name": "SellingPlanFixedAmountPriceAdjustment", - "description": "A fixed amount that's deducted from the original variant price. For example, $10.00 off.", + "name": "ShopPayPaymentRequestLineItem", + "description": "Represents a line item for a Shop Pay payment request.", "fields": [ { - "name": "adjustmentAmount", - "description": "The money value of the price adjustment.", + "name": "finalItemPrice", + "description": "The final item price for the line item.", "args": [], "type": { "kind": "NON_NULL", @@ -30987,21 +31335,10 @@ }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanFixedPriceAdjustment", - "description": "A fixed price adjustment for a variant that's purchased with a selling plan.", - "fields": [ + }, { - "name": "price", - "description": "A new price of the variant when it's purchased with the selling plan.", + "name": "finalLinePrice", + "description": "The final line price for the line item.", "args": [], "type": { "kind": "NON_NULL", @@ -31014,64 +31351,33 @@ }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanGroup", - "description": "Represents a selling method. For example, 'Subscribe and save' is a selling method where customers pay for goods or services per delivery. A selling plan group contains individual selling plans.", - "fields": [ - { - "name": "appName", - "description": "A display friendly name for the app that created the selling plan group.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null }, { - "name": "name", - "description": "The name of the selling plan group.", + "name": "image", + "description": "The image of the line item.", "args": [], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } + "kind": "OBJECT", + "name": "ShopPayPaymentRequestImage", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "options", - "description": "Represents the selling plan options available in the drop-down list in the storefront. For example, 'Delivery every week' or 'Delivery every 2 weeks' specifies the delivery frequency options for the product.", + "name": "itemDiscounts", + "description": "The item discounts for the line item.", "args": [], "type": { - "kind": "NON_NULL", + "kind": "LIST", "name": null, "ofType": { - "kind": "LIST", + "kind": "NON_NULL", "name": null, "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanGroupOption", - "ofType": null - } + "kind": "OBJECT", + "name": "ShopPayPaymentRequestDiscount", + "ofType": null } } }, @@ -31079,101 +31385,35 @@ "deprecationReason": null }, { - "name": "sellingPlans", - "description": "A list of selling plans in a selling plan group. A selling plan is a representation of how products and variants can be sold and purchased. For example, an individual selling plan could be '6 weeks of prepaid granola, delivered weekly'.", - "args": [ - { - "name": "first", - "description": "Returns up to the first `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "after", - "description": "Returns the elements that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "last", - "description": "Returns up to the last `n` elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "before", - "description": "Returns the elements that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null - }, - { - "name": "reverse", - "description": "Reverse the order of the underlying list.", - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "defaultValue": "false" - } - ], + "name": "label", + "description": "The label of the line item.", + "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "SellingPlanConnection", + "kind": "SCALAR", + "name": "String", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanGroupConnection", - "description": "An auto-generated type for paginating through multiple SellingPlanGroups.\n", - "fields": [ + }, { - "name": "edges", - "description": "A list of edges.", + "name": "lineDiscounts", + "description": "The line discounts for the line item.", "args": [], "type": { - "kind": "NON_NULL", + "kind": "LIST", "name": null, "ofType": { - "kind": "LIST", + "kind": "NON_NULL", "name": null, "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanGroupEdge", - "ofType": null - } + "kind": "OBJECT", + "name": "ShopPayPaymentRequestDiscount", + "ofType": null } } }, @@ -31181,66 +31421,39 @@ "deprecationReason": null }, { - "name": "nodes", - "description": "A list of the nodes contained in SellingPlanGroupEdge.", + "name": "originalItemPrice", + "description": "The original item price for the line item.", "args": [], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanGroup", - "ofType": null - } - } - } + "kind": "OBJECT", + "name": "MoneyV2", + "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "pageInfo", - "description": "Information to aid in pagination.", + "name": "originalLinePrice", + "description": "The original line price for the line item.", "args": [], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } + "kind": "OBJECT", + "name": "MoneyV2", + "ofType": null }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanGroupEdge", - "description": "An auto-generated type which holds one SellingPlanGroup and a cursor during pagination.\n", - "fields": [ + }, { - "name": "cursor", - "description": "A cursor for use in pagination.", + "name": "quantity", + "description": "The quantity of the line item.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "String", + "name": "Int", "ofType": null } }, @@ -31248,17 +31461,25 @@ "deprecationReason": null }, { - "name": "node", - "description": "The item at the end of SellingPlanGroupEdge.", + "name": "requiresShipping", + "description": "Whether the line item requires shipping.", "args": [], "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "SellingPlanGroup", - "ofType": null - } + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "sku", + "description": "The SKU of the line item.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null }, "isDeprecated": false, "deprecationReason": null @@ -31270,133 +31491,177 @@ "possibleTypes": null }, { - "kind": "OBJECT", - "name": "SellingPlanGroupOption", - "description": "Represents an option on a selling plan group that's available in the drop-down list in the storefront.\n\nIndividual selling plans contribute their options to the associated selling plan group. For example, a selling plan group might have an option called `option1: Delivery every`. One selling plan in that group could contribute `option1: 2 weeks` with the pricing for that option, and another selling plan could contribute `option1: 4 weeks`, with different pricing.", - "fields": [ + "kind": "INPUT_OBJECT", + "name": "ShopPayPaymentRequestLineItemInput", + "description": "The input fields to create a line item for a Shop Pay payment request.", + "fields": null, + "inputFields": [ { - "name": "name", - "description": "The name of the option. For example, 'Delivery every'.", - "args": [], + "name": "label", + "description": "The label of the line item.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "quantity", + "description": "The quantity of the line item.", "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "String", + "name": "Int", "ofType": null } }, - "isDeprecated": false, - "deprecationReason": null + "defaultValue": null }, { - "name": "values", - "description": "The values for the options specified by the selling plans in the selling plan group. For example, '1 week', '2 weeks', '3 weeks'.", - "args": [], + "name": "sku", + "description": "The SKU of the line item.", "type": { - "kind": "NON_NULL", + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "requiresShipping", + "description": "Whether the line item requires shipping.", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "image", + "description": "The image of the line item.", + "type": { + "kind": "INPUT_OBJECT", + "name": "ShopPayPaymentRequestImageInput", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "originalLinePrice", + "description": "The original line price for the line item.", + "type": { + "kind": "INPUT_OBJECT", + "name": "MoneyInput", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "finalLinePrice", + "description": "The final line price for the line item.", + "type": { + "kind": "INPUT_OBJECT", + "name": "MoneyInput", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "lineDiscounts", + "description": "The line discounts for the line item.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "LIST", "name": null, "ofType": { - "kind": "LIST", + "kind": "NON_NULL", "name": null, "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } + "kind": "INPUT_OBJECT", + "name": "ShopPayPaymentRequestDiscountInput", + "ofType": null } } }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanOption", - "description": "An option provided by a Selling Plan.", - "fields": [ + "defaultValue": null + }, { - "name": "name", - "description": "The name of the option (ie \"Delivery every\").", - "args": [], + "name": "originalItemPrice", + "description": "The original item price for the line item.", "type": { - "kind": "SCALAR", - "name": "String", + "kind": "INPUT_OBJECT", + "name": "MoneyInput", "ofType": null }, - "isDeprecated": false, - "deprecationReason": null + "defaultValue": null }, { - "name": "value", - "description": "The value of the option (ie \"Month\").", - "args": [], + "name": "finalItemPrice", + "description": "The final item price for the line item.", "type": { - "kind": "SCALAR", - "name": "String", + "kind": "INPUT_OBJECT", + "name": "MoneyInput", "ofType": null }, - "isDeprecated": false, - "deprecationReason": null + "defaultValue": null + }, + { + "name": "itemDiscounts", + "description": "The item discounts for the line item.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "ShopPayPaymentRequestDiscountInput", + "ofType": null + } + } + }, + "defaultValue": null } ], - "inputFields": null, - "interfaces": [], + "interfaces": null, "enumValues": null, "possibleTypes": null }, { "kind": "OBJECT", - "name": "SellingPlanPercentagePriceAdjustment", - "description": "A percentage amount that's deducted from the original variant price. For example, 10% off.", + "name": "ShopPayPaymentRequestReceipt", + "description": "Represents a receipt for a Shop Pay payment request.", "fields": [ { - "name": "adjustmentPercentage", - "description": "The percentage value of the price adjustment.", + "name": "paymentRequest", + "description": "The payment request object.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "Int", + "kind": "OBJECT", + "name": "ShopPayPaymentRequest", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanPriceAdjustment", - "description": "Represents by how much the price of a variant associated with a selling plan is adjusted. Each variant can have up to two price adjustments. If a variant has multiple price adjustments, then the first price adjustment applies when the variant is initially purchased. The second price adjustment applies after a certain number of orders (specified by the `orderCount` field) are made. If a selling plan doesn't have any price adjustments, then the unadjusted price of the variant is the effective price.", - "fields": [ + }, { - "name": "adjustmentValue", - "description": "The type of price adjustment. An adjustment value can have one of three types: percentage, amount off, or a new price.", + "name": "processingStatusType", + "description": "The processing status.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "UNION", - "name": "SellingPlanPriceAdjustmentValue", + "kind": "SCALAR", + "name": "String", "ofType": null } }, @@ -31404,13 +31669,17 @@ "deprecationReason": null }, { - "name": "orderCount", - "description": "The number of orders that the price adjustment applies to. If the price adjustment always applies, then this field is `null`.", + "name": "token", + "description": "The token of the receipt.", "args": [], "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null @@ -31421,47 +31690,21 @@ "enumValues": null, "possibleTypes": null }, - { - "kind": "UNION", - "name": "SellingPlanPriceAdjustmentValue", - "description": "Represents by how much the price of a variant associated with a selling plan is adjusted. Each variant can have up to two price adjustments.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": [ - { - "kind": "OBJECT", - "name": "SellingPlanFixedAmountPriceAdjustment", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanFixedPriceAdjustment", - "ofType": null - }, - { - "kind": "OBJECT", - "name": "SellingPlanPercentagePriceAdjustment", - "ofType": null - } - ] - }, { "kind": "OBJECT", - "name": "ShippingRate", - "description": "A shipping rate to be applied to a checkout.", + "name": "ShopPayPaymentRequestSession", + "description": "Represents a Shop Pay payment request session.", "fields": [ { - "name": "handle", - "description": "Human-readable unique identifier for this shipping rate.", + "name": "checkoutUrl", + "description": "The checkout URL of the Shop Pay payment request session.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "SCALAR", - "name": "String", + "name": "URL", "ofType": null } }, @@ -31469,15 +31712,15 @@ "deprecationReason": null }, { - "name": "price", - "description": "Price of this shipping rate.", + "name": "paymentRequest", + "description": "The payment request associated with the Shop Pay payment request session.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { "kind": "OBJECT", - "name": "MoneyV2", + "name": "ShopPayPaymentRequest", "ofType": null } }, @@ -31485,24 +31728,24 @@ "deprecationReason": null }, { - "name": "priceV2", - "description": "Price of this shipping rate.", + "name": "sourceIdentifier", + "description": "The source identifier of the Shop Pay payment request session.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", + "kind": "SCALAR", + "name": "String", "ofType": null } }, - "isDeprecated": true, - "deprecationReason": "Use `price` instead." + "isDeprecated": false, + "deprecationReason": null }, { - "name": "title", - "description": "Title of this shipping rate.", + "name": "token", + "description": "The token of the Shop Pay payment request session.", "args": [], "type": { "kind": "NON_NULL", @@ -31524,117 +31767,72 @@ }, { "kind": "OBJECT", - "name": "Shop", - "description": "Shop represents a collection of the general settings and information about the shop.", + "name": "ShopPayPaymentRequestSessionCreatePayload", + "description": "Return type for `shopPayPaymentRequestSessionCreate` mutation.", "fields": [ { - "name": "brand", - "description": "The shop's branding configuration.", + "name": "shopPayPaymentRequestSession", + "description": "The new Shop Pay payment request session object.", "args": [], "type": { "kind": "OBJECT", - "name": "Brand", + "name": "ShopPayPaymentRequestSession", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "description", - "description": "A description of the shop.", - "args": [], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "id", - "description": "A globally-unique ID.", + "name": "userErrors", + "description": "Error codes for failed Shop Pay payment request session mutations.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "ID", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "metafield", - "description": "Returns a metafield found by namespace and key.", - "args": [ - { - "name": "key", - "description": "The identifier for the metafield.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "namespace", - "description": "The container the metafield belongs to.", - "type": { + "kind": "LIST", + "name": null, + "ofType": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "UserErrorsShopPayPaymentRequestSessionUserErrors", "ofType": null } - }, - "defaultValue": null + } } - ], + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ShopPayPaymentRequestSessionSubmitPayload", + "description": "Return type for `shopPayPaymentRequestSessionSubmit` mutation.", + "fields": [ + { + "name": "paymentRequestReceipt", + "description": "The checkout on which the payment was applied.", + "args": [], "type": { "kind": "OBJECT", - "name": "Metafield", + "name": "ShopPayPaymentRequestReceipt", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "metafields", - "description": "The metafields associated with the resource matching the supplied list of namespaces and keys.", - "args": [ - { - "name": "identifiers", - "description": "The list of metafields to retrieve by namespace and key.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "HasMetafieldsIdentifier", - "ofType": null - } - } - } - }, - "defaultValue": null - } - ], + "name": "userErrors", + "description": "Error codes for failed Shop Pay payment request session mutations.", + "args": [], "type": { "kind": "NON_NULL", "name": null, @@ -31642,25 +31840,40 @@ "kind": "LIST", "name": null, "ofType": { - "kind": "OBJECT", - "name": "Metafield", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "UserErrorsShopPayPaymentRequestSessionUserErrors", + "ofType": null + } } } }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ShopPayPaymentRequestShippingLine", + "description": "Represents a shipping line for a Shop Pay payment request.", + "fields": [ { - "name": "moneyFormat", - "description": "A string representing the way currency is formatted when the currency isn’t specified.", + "name": "amount", + "description": "The amount for the shipping line.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "MoneyV2", "ofType": null } }, @@ -31668,8 +31881,8 @@ "deprecationReason": null }, { - "name": "name", - "description": "The shop’s name.", + "name": "code", + "description": "The code of the shipping line.", "args": [], "type": { "kind": "NON_NULL", @@ -31684,76 +31897,76 @@ "deprecationReason": null }, { - "name": "paymentSettings", - "description": "Settings related to payments.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PaymentSettings", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "primaryDomain", - "description": "The primary domain of the shop’s Online Store.", + "name": "label", + "description": "The label of the shipping line.", "args": [], "type": { "kind": "NON_NULL", "name": null, "ofType": { - "kind": "OBJECT", - "name": "Domain", + "kind": "SCALAR", + "name": "String", "ofType": null } }, "isDeprecated": false, "deprecationReason": null - }, + } + ], + "inputFields": null, + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "ShopPayPaymentRequestShippingLineInput", + "description": "The input fields to create a shipping line for a Shop Pay payment request.", + "fields": null, + "inputFields": [ { - "name": "privacyPolicy", - "description": "The shop’s privacy policy.", - "args": [], + "name": "code", + "description": "The code of the shipping line.", "type": { - "kind": "OBJECT", - "name": "ShopPolicy", + "kind": "SCALAR", + "name": "String", "ofType": null }, - "isDeprecated": false, - "deprecationReason": null + "defaultValue": null }, { - "name": "refundPolicy", - "description": "The shop’s refund policy.", - "args": [], + "name": "label", + "description": "The label of the shipping line.", "type": { - "kind": "OBJECT", - "name": "ShopPolicy", + "kind": "SCALAR", + "name": "String", "ofType": null }, - "isDeprecated": false, - "deprecationReason": null + "defaultValue": null }, { - "name": "shippingPolicy", - "description": "The shop’s shipping policy.", - "args": [], + "name": "amount", + "description": "The amount for the shipping line.", "type": { - "kind": "OBJECT", - "name": "ShopPolicy", + "kind": "INPUT_OBJECT", + "name": "MoneyInput", "ofType": null }, - "isDeprecated": false, - "deprecationReason": null - }, + "defaultValue": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "ShopPayPaymentRequestTotalShippingPrice", + "description": "Represents a shipping total for a Shop Pay payment request.", + "fields": [ { - "name": "shipsToCountries", - "description": "Countries that the shop ships to.", + "name": "discounts", + "description": "The discounts for the shipping total.", "args": [], "type": { "kind": "NON_NULL", @@ -31765,8 +31978,8 @@ "kind": "NON_NULL", "name": null, "ofType": { - "kind": "ENUM", - "name": "CountryCode", + "kind": "OBJECT", + "name": "ShopPayPaymentRequestDiscount", "ofType": null } } @@ -31776,24 +31989,28 @@ "deprecationReason": null }, { - "name": "subscriptionPolicy", - "description": "The shop’s subscription policy.", + "name": "finalTotal", + "description": "The final total for the shipping total.", "args": [], "type": { - "kind": "OBJECT", - "name": "ShopPolicyWithDefault", - "ofType": null + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "MoneyV2", + "ofType": null + } }, "isDeprecated": false, "deprecationReason": null }, { - "name": "termsOfService", - "description": "The shop’s terms of service.", + "name": "originalTotal", + "description": "The original total for the shipping total.", "args": [], "type": { "kind": "OBJECT", - "name": "ShopPolicy", + "name": "MoneyV2", "ofType": null }, "isDeprecated": false, @@ -31801,18 +32018,56 @@ } ], "inputFields": null, - "interfaces": [ + "interfaces": [], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "ShopPayPaymentRequestTotalShippingPriceInput", + "description": "The input fields to create a shipping total for a Shop Pay payment request.", + "fields": null, + "inputFields": [ { - "kind": "INTERFACE", - "name": "HasMetafields", - "ofType": null + "name": "discounts", + "description": "The discounts for the shipping total.\n\nThe input must not contain more than `250` values.", + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "INPUT_OBJECT", + "name": "ShopPayPaymentRequestDiscountInput", + "ofType": null + } + } + }, + "defaultValue": null }, { - "kind": "INTERFACE", - "name": "Node", - "ofType": null + "name": "originalTotal", + "description": "The original total for the shipping total.", + "type": { + "kind": "INPUT_OBJECT", + "name": "MoneyInput", + "ofType": null + }, + "defaultValue": null + }, + { + "name": "finalTotal", + "description": "The final total for the shipping total.", + "type": { + "kind": "INPUT_OBJECT", + "name": "MoneyInput", + "ofType": null + }, + "defaultValue": null } ], + "interfaces": null, "enumValues": null, "possibleTypes": null }, @@ -33073,103 +33328,37 @@ "possibleTypes": null }, { - "kind": "INPUT_OBJECT", - "name": "TokenizedPaymentInputV3", - "description": "Specifies the fields required to complete a checkout with\na tokenized payment.\n", - "fields": null, - "inputFields": [ - { - "name": "type", - "description": "The type of payment token.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "PaymentTokenType", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "paymentAmount", - "description": "The amount and currency of the payment.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "MoneyInput", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "idempotencyKey", - "description": "A unique client generated key used to avoid duplicate charges. When a duplicate payment is found, the original is returned instead of creating a new one. For more information, refer to [Idempotent requests](https://shopify.dev/api/usage/idempotent-requests).", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "billingAddress", - "description": "The billing address for the payment.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "INPUT_OBJECT", - "name": "MailingAddressInput", - "ofType": null - } - }, - "defaultValue": null - }, - { - "name": "paymentData", - "description": "A simple string or JSON containing the required payment data for the tokenized payment.", - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "defaultValue": null - }, + "kind": "OBJECT", + "name": "Swatch", + "description": "Color and image for visual representation.", + "fields": [ { - "name": "test", - "description": "Whether to execute the payment in test mode, if possible. Test mode isn't supported in production stores. Defaults to `false`.", + "name": "color", + "description": "The swatch color.", + "args": [], "type": { "kind": "SCALAR", - "name": "Boolean", + "name": "Color", "ofType": null }, - "defaultValue": "false" + "isDeprecated": false, + "deprecationReason": null }, { - "name": "identifier", - "description": "Public Hash Key used for AndroidPay payments only.", + "name": "image", + "description": "The swatch image.", + "args": [], "type": { - "kind": "SCALAR", - "name": "String", + "kind": "OBJECT", + "name": "MediaImage", "ofType": null }, - "defaultValue": null + "isDeprecated": false, + "deprecationReason": null } ], - "interfaces": null, + "inputFields": null, + "interfaces": [], "enumValues": null, "possibleTypes": null }, @@ -33180,7 +33369,7 @@ "fields": [ { "name": "trackingParameters", - "description": "A URL parameters to be added to a page URL when it is linked from a GraphQL result. This allows for tracking the origin of the traffic.", + "description": "URL parameters to be added to a page URL to track the origin of on-site search traffic for [analytics reporting](https://help.shopify.com/manual/reports-and-analytics/shopify-reports/report-types/default-reports/behaviour-reports). Returns a result when accessed through the [search](https://shopify.dev/docs/api/storefront/current/queries/search) or [predictiveSearch](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries, otherwise returns null.", "args": [], "type": { "kind": "SCALAR", @@ -33222,189 +33411,10 @@ } ] }, - { - "kind": "OBJECT", - "name": "Transaction", - "description": "An object representing exchange of money for a product or service.", - "fields": [ - { - "name": "amount", - "description": "The amount of money that the transaction was for.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "amountV2", - "description": "The amount of money that the transaction was for.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "MoneyV2", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `amount` instead." - }, - { - "name": "kind", - "description": "The kind of the transaction.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "TransactionKind", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "status", - "description": "The status of the transaction.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "ENUM", - "name": "TransactionStatus", - "ofType": null - } - }, - "isDeprecated": true, - "deprecationReason": "Use `statusV2` instead." - }, - { - "name": "statusV2", - "description": "The status of the transaction.", - "args": [], - "type": { - "kind": "ENUM", - "name": "TransactionStatus", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "test", - "description": "Whether the transaction was done in test mode or not.", - "args": [], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "TransactionKind", - "description": "The different kinds of order transactions.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "SALE", - "description": "An authorization and capture performed together in a single step.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CAPTURE", - "description": "A transfer of the money that was reserved during the authorization stage.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "AUTHORIZATION", - "description": "An amount reserved against the cardholder's funding source.\nMoney does not change hands until the authorization is captured.\n", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "EMV_AUTHORIZATION", - "description": "An authorization for a payment taken with an EMV credit card reader.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "CHANGE", - "description": "Money returned to the customer when they have paid too much.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, - { - "kind": "ENUM", - "name": "TransactionStatus", - "description": "Transaction statuses describe the status of a transaction.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": [ - { - "name": "PENDING", - "description": "The transaction is pending.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SUCCESS", - "description": "The transaction succeeded.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "FAILURE", - "description": "The transaction failed.", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "ERROR", - "description": "There was an error while processing the transaction.", - "isDeprecated": false, - "deprecationReason": null - } - ], - "possibleTypes": null - }, { "kind": "SCALAR", "name": "URL", - "description": "Represents an [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986) and\n[RFC 3987](https://datatracker.ietf.org/doc/html/rfc3987)-compliant URI string.\n\nFor example, `\"https://johns-apparel.myshopify.com\"` is a valid URL. It includes a scheme (`https`) and a host\n(`johns-apparel.myshopify.com`).\n", + "description": "Represents an [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986) and\n[RFC 3987](https://datatracker.ietf.org/doc/html/rfc3987)-compliant URI string.\n\nFor example, `\"https://example.myshopify.com\"` is a valid URL. It includes a scheme (`https`) and a host\n(`example.myshopify.com`).\n", "fields": null, "inputFields": null, "interfaces": null, @@ -33871,6 +33881,100 @@ "enumValues": null, "possibleTypes": null }, + { + "kind": "OBJECT", + "name": "UserErrorsShopPayPaymentRequestSessionUserErrors", + "description": "Error codes for failed Shop Pay payment request session mutations.", + "fields": [ + { + "name": "code", + "description": "The error code.", + "args": [], + "type": { + "kind": "ENUM", + "name": "UserErrorsShopPayPaymentRequestSessionUserErrorsCode", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "field", + "description": "The path to the input field that caused the error.", + "args": [], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "message", + "description": "The error message.", + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "DisplayableError", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "ENUM", + "name": "UserErrorsShopPayPaymentRequestSessionUserErrorsCode", + "description": "Possible error codes that can be returned by `ShopPayPaymentRequestSessionUserErrors`.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": [ + { + "name": "PAYMENT_REQUEST_INVALID_INPUT", + "description": "Payment request input is invalid.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "PAYMENT_REQUEST_NOT_FOUND", + "description": "Payment request not found.", + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "IDEMPOTENCY_KEY_ALREADY_USED", + "description": "Idempotency key has already been used.", + "isDeprecated": false, + "deprecationReason": null + } + ], + "possibleTypes": null + }, { "kind": "INPUT_OBJECT", "name": "VariantOptionFilter", @@ -34580,6 +34684,30 @@ "isDeprecated": false, "deprecationReason": null }, + { + "name": "inContextAnnotations", + "description": null, + "args": [], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "InContextAnnotation", + "ofType": null + } + } + } + }, + "isDeprecated": false, + "deprecationReason": null + }, { "name": "isDeprecated", "description": null, @@ -34719,6 +34847,18 @@ "isDeprecated": false, "deprecationReason": null }, + { + "name": "maxInputSize", + "description": null, + "args": [], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, { "name": "name", "description": null, @@ -35261,6 +35401,29 @@ ], "args": [] }, + { + "name": "specifiedBy", + "description": "Exposes a URL that specifies the behavior of this scalar.", + "locations": [ + "SCALAR" + ], + "args": [ + { + "name": "url", + "description": "The URL that specifies the behavior of this scalar.", + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null + } + ] + }, { "name": "accessRestricted", "description": "Marks an element of a GraphQL schema as having restricted access.", @@ -35283,7 +35446,7 @@ }, { "name": "inContext", - "description": "Contextualizes data based on the additional information provided by the\ndirective. For example, you can use the `@inContext(country: CA)` directive to\n[query a product's price](https://shopify.dev/custom-storefronts/internationalization/international-pricing)\nin a storefront within the context of Canada.\n", + "description": "Contextualizes data based on the additional information provided by the directive. For example, you can use the `@inContext(country: CA)` directive to [query a product's price](https://shopify.dev/custom-storefronts/internationalization/international-pricing) in a storefront within the context of Canada.", "locations": [ "QUERY", "MUTATION" @@ -35318,6 +35481,46 @@ "ofType": null }, "defaultValue": null + }, + { + "name": "buyer", + "description": "The buyer's identity.", + "type": { + "kind": "INPUT_OBJECT", + "name": "BuyerInput", + "ofType": null + }, + "defaultValue": null + } + ] + }, + { + "name": "defer", + "description": "Informs the server to delay the execution of the current fragment, potentially resulting in multiple responses from the server. Non-deferred data is delivered in the initial response and data deferred is delivered in subsequent responses. Only available on development stores with the Defer Directive developer preview enabled.", + "locations": [ + "FRAGMENT_SPREAD", + "INLINE_FRAGMENT" + ], + "args": [ + { + "name": "if", + "description": "When `true`, fragment should be deferred. When `false`, fragment will not be\ndeferred and data will be included in the initial response. Defaults to `true`\nwhen omitted.\n", + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "defaultValue": "true" + }, + { + "name": "label", + "description": "May be used to identify the data from responses and associate it with the\ncorresponding defer directive. `label` must be unique label across all `@defer` and\n`@stream` directives in a document. `label` must not be provided as a variable.\n", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null } ] } From 854a8960794f3cf212e8432fc96951e106a6b820 Mon Sep 17 00:00:00 2001 From: Scott Dixon Date: Fri, 4 Oct 2024 17:06:27 +1000 Subject: [PATCH 17/19] Remove checkout --- README.md | 150 ----- fixtures/checkout-create-fixture.js | 101 --- ...create-invalid-variant-id-error-fixture.js | 7 - ...reate-with-paginated-line-items-fixture.js | 82 --- .../checkout-discount-code-apply-fixture.js | 126 ---- .../checkout-discount-code-remove-fixture.js | 89 --- fixtures/checkout-fixture.js | 50 -- fixtures/checkout-gift-card-remove-fixture.js | 127 ---- fixtures/checkout-gift-cards-apply-fixture.js | 152 ----- fixtures/checkout-line-items-add-fixture.js | 80 --- ...line-items-add-with-user-errors-fixture.js | 20 - .../checkout-line-items-remove-fixture.js | 75 --- ...e-items-remove-with-user-errors-fixture.js | 20 - .../checkout-line-items-replace-fixture.js | 79 --- ...-items-replace-with-user-errors-fixture.js | 14 - .../checkout-line-items-update-fixture.js | 95 --- ...e-items-update-with-user-errors-fixture.js | 20 - ...kout-shipping-address-update-v2-fixture.js | 89 --- ...ress-update-v2-with-user-errors-fixture.js | 20 - .../checkout-update-custom-attrs-fixture.js | 100 --- ...e-custom-attrs-with-user-errors-fixture.js | 20 - fixtures/checkout-update-email-fixture.js | 101 --- ...t-update-email-with-user-errors-fixture.js | 20 - ...ckout-with-paginated-line-items-fixture.js | 74 --- src/checkout-resource.js | 331 ---------- src/graphql/CheckoutFragment.graphql | 204 ------ src/graphql/CheckoutUserErrorFragment.graphql | 5 - ...checkoutAttributesUpdateV2Mutation.graphql | 13 - src/graphql/checkoutCreateMutation.graphql | 13 - ...heckoutDiscountCodeApplyV2Mutation.graphql | 13 - ...checkoutDiscountCodeRemoveMutation.graphql | 13 - .../checkoutEmailUpdateV2Mutation.graphql | 13 - .../checkoutGiftCardRemoveV2Mutation.graphql | 13 - .../checkoutGiftCardsAppendMutation.graphql | 13 - .../checkoutLineItemsAddMutation.graphql | 13 - .../checkoutLineItemsRemoveMutation.graphql | 13 - .../checkoutLineItemsReplaceMutation.graphql | 10 - .../checkoutLineItemsUpdateMutation.graphql | 13 - src/graphql/checkoutNodeQuery.graphql | 5 - ...outShippingAddressUpdateV2Mutation.graphql | 13 - src/handle-checkout-mutation.js | 30 - test/client-checkout-integration-test.js | 582 ------------------ 42 files changed, 3021 deletions(-) delete mode 100644 fixtures/checkout-create-fixture.js delete mode 100644 fixtures/checkout-create-invalid-variant-id-error-fixture.js delete mode 100644 fixtures/checkout-create-with-paginated-line-items-fixture.js delete mode 100644 fixtures/checkout-discount-code-apply-fixture.js delete mode 100644 fixtures/checkout-discount-code-remove-fixture.js delete mode 100644 fixtures/checkout-fixture.js delete mode 100644 fixtures/checkout-gift-card-remove-fixture.js delete mode 100644 fixtures/checkout-gift-cards-apply-fixture.js delete mode 100644 fixtures/checkout-line-items-add-fixture.js delete mode 100644 fixtures/checkout-line-items-add-with-user-errors-fixture.js delete mode 100644 fixtures/checkout-line-items-remove-fixture.js delete mode 100644 fixtures/checkout-line-items-remove-with-user-errors-fixture.js delete mode 100644 fixtures/checkout-line-items-replace-fixture.js delete mode 100644 fixtures/checkout-line-items-replace-with-user-errors-fixture.js delete mode 100644 fixtures/checkout-line-items-update-fixture.js delete mode 100644 fixtures/checkout-line-items-update-with-user-errors-fixture.js delete mode 100644 fixtures/checkout-shipping-address-update-v2-fixture.js delete mode 100644 fixtures/checkout-shipping-address-update-v2-with-user-errors-fixture.js delete mode 100644 fixtures/checkout-update-custom-attrs-fixture.js delete mode 100644 fixtures/checkout-update-custom-attrs-with-user-errors-fixture.js delete mode 100644 fixtures/checkout-update-email-fixture.js delete mode 100644 fixtures/checkout-update-email-with-user-errors-fixture.js delete mode 100644 fixtures/checkout-with-paginated-line-items-fixture.js delete mode 100644 src/checkout-resource.js delete mode 100644 src/graphql/CheckoutFragment.graphql delete mode 100644 src/graphql/CheckoutUserErrorFragment.graphql delete mode 100644 src/graphql/checkoutAttributesUpdateV2Mutation.graphql delete mode 100644 src/graphql/checkoutCreateMutation.graphql delete mode 100644 src/graphql/checkoutDiscountCodeApplyV2Mutation.graphql delete mode 100644 src/graphql/checkoutDiscountCodeRemoveMutation.graphql delete mode 100644 src/graphql/checkoutEmailUpdateV2Mutation.graphql delete mode 100644 src/graphql/checkoutGiftCardRemoveV2Mutation.graphql delete mode 100644 src/graphql/checkoutGiftCardsAppendMutation.graphql delete mode 100644 src/graphql/checkoutLineItemsAddMutation.graphql delete mode 100644 src/graphql/checkoutLineItemsRemoveMutation.graphql delete mode 100644 src/graphql/checkoutLineItemsReplaceMutation.graphql delete mode 100644 src/graphql/checkoutLineItemsUpdateMutation.graphql delete mode 100644 src/graphql/checkoutNodeQuery.graphql delete mode 100644 src/graphql/checkoutShippingAddressUpdateV2Mutation.graphql delete mode 100644 src/handle-checkout-mutation.js delete mode 100644 test/client-checkout-integration-test.js diff --git a/README.md b/README.md index 18e91736c..f520e5b87 100644 --- a/README.md +++ b/README.md @@ -39,17 +39,6 @@ Each version of the JS Buy SDK uses a specific Storefront API version and the su - [Updating Cart Notes](#updating-cart-notes) - [Updating Cart Selected Delivery Options](#updating-cart-selected-delivery-options) - [Redirecting to Checkout](#redirecting-to-checkout) - - [Checkouts](#checkouts) - - [Creating a Checkout](#creating-a-checkout) - - [Updating Checkout Attributes](#updating-checkout-attributes) - - [Adding Line Items](#adding-line-items) - - [Updating Line Items](#updating-line-items) - - [Removing Line Items](#removing-line-items) - - [Fetching a Checkout](#fetching-a-checkout) - - [Adding a Discount](#adding-a-discount) - - [Removing a Discount](#removing-a-discount) - - [Updating a Shipping Address](#updating-a-shipping-address) - - [Completing a checkout](#completing-a-checkout) - [Expanding the SDK](#expanding-the-sdk) - [Initializing the Client](#initializing-the-client-1) - [Fetching Products](#fetching-products-1) @@ -314,145 +303,6 @@ client.cart.updateSelectedDeliveryOptions(cartId, selectedDeliveryOptions).then( To complete the purchase, redirect customers to the `checkoutUrl` property attached to the cart. -## Checkouts - -> [!WARNING] -> Checkouts will [soon be deprecated](https://github.com/Shopify/storefront-api-feedback/discussions/225). Use [Carts](#carts) instead. - -### Creating a Checkout - -```javascript -// Create an empty checkout -client.checkout.create().then((checkout) => { - // Do something with the checkout - console.log(checkout); -}); -``` - -### Updating checkout attributes - -```javascript -const checkoutId = 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8'; -const input = {customAttributes: [{key: "MyKey", value: "MyValue"}]}; - -client.checkout.updateAttributes(checkoutId, input).then((checkout) => { - // Do something with the updated checkout -}); -``` - -### Adding Line Items - -```javascript -const checkoutId = 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8'; // ID of an existing checkout -const lineItemsToAdd = [ - { - variantId: 'gid://shopify/ProductVariant/29106064584', - quantity: 5, - customAttributes: [{key: "MyKey", value: "MyValue"}] - } -]; - -// Add an item to the checkout -client.checkout.addLineItems(checkoutId, lineItemsToAdd).then((checkout) => { - // Do something with the updated checkout - console.log(checkout.lineItems); // Array with one additional line item -}); -``` - -### Updating Line Items - -```javascript -const checkoutId = 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8'; // ID of an existing checkout -const lineItemsToUpdate = [ - {id: 'gid://shopify/CheckoutLineItem/194677729198640?checkout=e3bd71f7248c806f33725a53e33931ef', quantity: 2} -]; - -// Update the line item on the checkout (change the quantity or variant) -client.checkout.updateLineItems(checkoutId, lineItemsToUpdate).then((checkout) => { - // Do something with the updated checkout - console.log(checkout.lineItems); // Quantity of line item 'gid://shopify/Product/7857989384' updated to 2 -}); -``` - -### Removing Line Items - -```javascript -const checkoutId = 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8'; // ID of an existing checkout -const lineItemIdsToRemove = [ - 'gid://shopify/CheckoutLineItem/194677729198640?checkout=e3bd71f7248c806f33725a53e33931ef' -]; - -// Remove an item from the checkout -client.checkout.removeLineItems(checkoutId, lineItemIdsToRemove).then((checkout) => { - // Do something with the updated checkout - console.log(checkout.lineItems); // Checkout with line item 'gid://shopify/CheckoutLineItem/194677729198640?checkout=e3bd71f7248c806f33725a53e33931ef' removed -}); -``` - -### Fetching a Checkout - -```javascript -const checkoutId = 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8' - -client.checkout.fetch(checkoutId).then((checkout) => { - // Do something with the checkout - console.log(checkout); -}); -``` - -### Adding a Discount - -```javascript -const checkoutId = 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8'; // ID of an existing checkout -const discountCode = 'best-discount-ever'; - -// Add a discount code to the checkout -client.checkout.addDiscount(checkoutId, discountCode).then(checkout => { - // Do something with the updated checkout - console.log(checkout); -}); -``` - -### Removing a Discount - -```javascript -const checkoutId = 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8'; // ID of an existing checkout - -// Removes the applied discount from an existing checkout. -client.checkout.removeDiscount(checkoutId).then(checkout => { - // Do something with the updated checkout - console.log(checkout); -}); -``` - -### Updating a Shipping Address - -```javascript -const checkoutId = 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8'; // ID of an existing checkout - -const shippingAddress = { - address1: 'Chestnut Street 92', - address2: 'Apartment 2', - city: 'Louisville', - company: null, - country: 'United States', - firstName: 'Bob', - lastName: 'Norman', - phone: '555-625-1199', - province: 'Kentucky', - zip: '40202' - }; - -// Update the shipping address for an existing checkout. -client.checkout.updateShippingAddress(checkoutId, shippingAddress).then(checkout => { - // Do something with the updated checkout -}); -``` - -### Completing a checkout - -The simplest way to complete a checkout is to use the [webUrl](https://help.shopify.com/en/api/storefront-api/reference/object/checkout) property that is returned when creating a checkout. This URL redirects the customer to Shopify's [online checkout](https://help.shopify.com/en/manual/checkout-settings) to complete the purchase. - ## Expanding the SDK Not all fields that are available on the [Storefront API](https://help.shopify.com/en/api/custom-storefronts/storefront-api/reference) are exposed through the SDK. If you use the unoptimized version of the SDK, you can easily build your own queries. In order to do this, use the UMD Unoptimized build. diff --git a/fixtures/checkout-create-fixture.js b/fixtures/checkout-create-fixture.js deleted file mode 100644 index f9c538db5..000000000 --- a/fixtures/checkout-create-fixture.js +++ /dev/null @@ -1,101 +0,0 @@ -export default { - data: { - checkoutCreate: { - checkoutUserErrors: [], - userErrors: [], - checkout: { - id: 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8', - ready: true, - lineItems: { - pageInfo: { - hasNextPage: false, - hasPreviousPage: false - }, - edges: [ - { - cursor: 'eyJsYXN0X2lkIjoiZDUyZWU5ZTEwYmQxMWE0NDlkNmQzMWNkMzBhMGFjNzMifQ==', - node: { - title: 'Intelligent Granite Table', - variant: { - id: 'gid://shopify/ProductVariant/29106064584', - title: 'Awesome Copper Bench', - price: { - amount: '64.99', - currencyCode: 'CAD' - }, - compareAtPrice: null, - weight: 4.5, - image: null, - selectedOptions: [ - { - name: 'Color or something', - value: 'Awesome Copper Bench' - } - ] - }, - quantity: 5, - customAttributes: [] - } - } - ] - }, - shippingAddress: { - address1: '123 Cat Road', - address2: null, - city: 'Cat Land', - company: 'Catmart', - country: 'Canada', - firstName: 'Meow', - formatted: [ - 'Catmart', - '123 Cat Road', - 'Cat Land ON M3O 0W1', - 'Canada' - ], - lastName: 'Meowington', - latitude: null, - longitude: null, - phone: '4161234566', - province: 'Ontario', - zip: 'M3O 0W1', - name: 'Meow Meowington', - countryCode: 'CA', - provinceCode: 'ON', - id: 'Z2lkOi8vc2hvcGlmeS9QcmdfnAU8nakdWMnAbh890hyOTEwNjA2NDU4NA==' - }, - shippingLine: null, - requiresShipping: true, - customAttributes: [], - note: null, - paymentDue: { - amount: '367.19', - currencyCode: 'CAD' - }, - webUrl: 'https://checkout.myshopify.io/1/checkouts/c4abf4bf036239ab5e3d0bf93c642c96', - orderStatusUrl: null, - taxExempt: false, - taxesIncluded: false, - currencyCode: 'CAD', - totalTax: { - amount: '42.24', - currencyCode: 'CAD' - }, - lineItemsSubtotalPrice: { - amount: '324.95', - currencyCode: 'CAD' - }, - subtotalPrice: { - amount: '324.95', - currencyCode: 'CAD' - }, - totalPrice: { - amount: '367.19', - currencyCode: 'CAD' - }, - completedAt: null, - createdAt: '2017-03-28T16:58:31Z', - updatedAt: '2017-03-28T16:58:31Z' - } - } - } -}; diff --git a/fixtures/checkout-create-invalid-variant-id-error-fixture.js b/fixtures/checkout-create-invalid-variant-id-error-fixture.js deleted file mode 100644 index 3cfb17106..000000000 --- a/fixtures/checkout-create-invalid-variant-id-error-fixture.js +++ /dev/null @@ -1,7 +0,0 @@ -export default { - "errors": [ - { - "message": "Variable input of type CheckoutCreateInput! was provided invalid value" - } - ] -} diff --git a/fixtures/checkout-create-with-paginated-line-items-fixture.js b/fixtures/checkout-create-with-paginated-line-items-fixture.js deleted file mode 100644 index 34d1b6e23..000000000 --- a/fixtures/checkout-create-with-paginated-line-items-fixture.js +++ /dev/null @@ -1,82 +0,0 @@ -export default { - data: { - checkoutCreate: { - checkoutUserErrors: [], - userErrors: [], - checkout: { - id: 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8', - ready: true, - lineItems: { - pageInfo: { - hasNextPage: true, - hasPreviousPage: false - }, - edges: [ - { - cursor: 'eyJsYXN0X2lkIjoiZDUyZWU5ZTEwYmQxMWE0NDlkNmQzMWNkMzBhMGFjNzMifQ==', - node: { - title: 'Intelligent Granite Table', - variant: { - id: 'gid://shopify/ProductVariant/1', - title: 'Awesome Copper Bench', - price: { - amount: '64.99', - currencyCode: 'CAD' - }, - compareAtPrice: { - amount: '69.99', - currencyCode: 'CAD' - }, - weight: 4.5, - image: null, - selectedOptions: [ - { - name: 'Color or something', - value: 'Awesome Copper Bench' - } - ] - }, - quantity: 5, - customAttributes: [] - } - } - ] - }, - shippingAddress: null, - shippingLine: null, - requiresShipping: true, - customAttributes: [], - note: null, - paymentDue: { - amount: '367.19', - currencyCode: 'CAD' - }, - webUrl: 'https://checkout.myshopify.io/1/checkouts/c4abf4bf036239ab5e3d0bf93c642c96', - order: null, - orderStatusUrl: null, - taxExempt: false, - taxesIncluded: false, - currencyCode: 'CAD', - totalTax: { - amount: '42.24', - currencyCode: 'CAD' - }, - lineItemsSubtotalPrice: { - amount: '324.95', - currencyCode: 'CAD' - }, - subtotalPrice: { - amount: '324.95', - currencyCode: 'CAD' - }, - totalPrice: { - amount: '367.19', - currencyCode: 'CAD' - }, - completedAt: null, - createdAt: '2017-03-28T16:58:31Z', - updatedAt: '2017-03-28T16:58:31Z' - } - } - } -}; diff --git a/fixtures/checkout-discount-code-apply-fixture.js b/fixtures/checkout-discount-code-apply-fixture.js deleted file mode 100644 index 4f9fb1e08..000000000 --- a/fixtures/checkout-discount-code-apply-fixture.js +++ /dev/null @@ -1,126 +0,0 @@ -export default { - data: { - checkoutDiscountCodeApplyV2: { - checkoutUserErrors: [], - userErrors: [], - checkout: { - id: 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8', - createdAt: '2017-03-17T16:00:40Z', - updatedAt: '2017-03-17T16:00:40Z', - requiresShipping: true, - shippingLine: null, - order: null, - orderStatusUrl: null, - taxExempt: false, - taxesIncluded: false, - currencyCode: 'CAD', - totalPrice: { - amount: '80.28', - currencyCode: 'CAD' - }, - lineItemsSubtotalPrice: { - amount: '74.99', - currencyCode: 'CAD' - }, - subtotalPrice: { - amount: '67.50', - currencyCode: 'CAD' - }, - totalTax: { - amount: '8.78', - currencyCode: 'CAD' - }, - paymentDue: { - amount: '80.28', - currencyCode: 'CAD' - }, - completedAt: null, - shippingAddress: { - address1: '123 Cat Road', - address2: null, - city: 'Cat Land', - company: 'Catmart', - country: 'Canada', - firstName: 'Meow', - formatted: [ - 'Catmart', - '123 Cat Road', - 'Cat Land ON M3O 0W1', - 'Canada' - ], - lastName: 'Meowington', - latitude: null, - longitude: null, - phone: '4161234566', - province: 'Ontario', - zip: 'M3O 0W1', - name: 'Meow Meowington', - countryCode: 'CA', - provinceCode: 'ON', - id: '291dC9lM2JkNzHJnnf8a89njNJNKAhu1gn7lMzM5MzFlZj9rZXk9NDcwOTJ==' - }, - lineItems: { - pageInfo: { - hasNextPage: false, - hasPreviousPage: false - }, - edges: [ - { - cursor: 'eyJsYXN0X2lkIjoiZDUyZWU5ZTEwYmQxMWE0NDlkNmQzMWNkMzBhMGFjNzMifQ==', - node: { - title: 'Intelligent Granite Table', - variant: { - id: 'gid://shopify/ProductVariant/29106064584', - price: { - amount: '74.99', - currencyCode: 'CAD' - } - }, - quantity: 5, - customAttributes: [], - discountAllocations: [ - { - allocatedAmount: { - amount: '7.49', - currencyCode: 'CAD' - }, - discountApplication: { - targetSelection: 'ALL', - allocationMethod: 'ACROSS', - targetType: 'LINE_ITEM', - code: 'TENPERCENTOFF', - applicable: true, - value: { - percentage: '10' - } - } - } - ] - } - } - ] - }, - discountApplications: { - pageInfo: { - hasNextPage: false, - hasPreviousPage: false - }, - edges: [ - { - node: { - targetSelection: 'ALL', - allocationMethod: 'ACROSS', - targetType: 'LINE_ITEM', - code: 'TENPERCENTOFF', - applicable: true, - value: { - percentage: '10' - } - } - } - ] - } - } - } - } -}; diff --git a/fixtures/checkout-discount-code-remove-fixture.js b/fixtures/checkout-discount-code-remove-fixture.js deleted file mode 100644 index a535bbdb5..000000000 --- a/fixtures/checkout-discount-code-remove-fixture.js +++ /dev/null @@ -1,89 +0,0 @@ -export default { - data: { - checkoutDiscountCodeRemove: { - checkoutUserErrors: [], - userErrors: [], - checkout: { - id: 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8', - createdAt: '2017-03-17T16:00:40Z', - updatedAt: '2017-03-17T16:00:40Z', - requiresShipping: true, - shippingLine: null, - order: null, - orderStatusUrl: null, - taxExempt: false, - taxesIncluded: false, - currencyCode: 'CAD', - totalPrice: { - amount: '88.74', - currencyCode: 'CAD' - }, - lineItemsSubtotalPrice: { - amount: '74.99', - currencyCode: 'CAD' - }, - subtotalPrice: { - amount: '74.99', - currencyCode: 'CAD' - }, - totalTax: { - amount: '9.75', - currencyCode: 'CAD' - }, - paymentDue: { - amount: '88.74', - currencyCode: 'CAD' - }, - completedAt: null, - shippingAddress: { - address1: '123 Cat Road', - address2: null, - city: 'Cat Land', - company: 'Catmart', - country: 'Canada', - firstName: 'Meow', - formatted: [ - 'Catmart', - '123 Cat Road', - 'Cat Land ON M3O 0W1', - 'Canada' - ], - lastName: 'Meowington', - latitude: null, - longitude: null, - phone: '4161234566', - province: 'Ontario', - zip: 'M3O 0W1', - name: 'Meow Meowington', - countryCode: 'CA', - provinceCode: 'ON', - id: '291dC9lM2JkNzHJnnf8a89njNJNKAhu1gn7lMzM5MzFlZj9rZXk9NDcwOTJ==' - }, - lineItems: { - pageInfo: { - hasNextPage: false, - hasPreviousPage: false - }, - edges: [ - { - cursor: 'eyJsYXN0X2lkIjoiZDUyZWU5ZTEwYmQxMWE0NDlkNmQzMWNkMzBhMGFjNzMifQ==', - node: { - title: 'Intelligent Granite Table', - variant: { - id: 'gid://shopify/ProductVariant/29106064584', - price: { - amount: '74.99', - currencyCode: 'CAD' - } - }, - quantity: 5, - customAttributes: [], - discountAllocations: [] - } - } - ] - } - } - } - } -}; diff --git a/fixtures/checkout-fixture.js b/fixtures/checkout-fixture.js deleted file mode 100644 index 79a8d6551..000000000 --- a/fixtures/checkout-fixture.js +++ /dev/null @@ -1,50 +0,0 @@ -export default { - data: { - node: { - __typename: 'Checkout', - id: 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8', - ready: true, - lineItems: { - pageInfo: { - hasNextPage: false, - hasPreviousPage: false - }, - edges: [] - }, - shippingAddress: null, - shippingLine: null, - requiresShipping: false, - customAttributes: [], - note: null, - paymentDue: { - amount: '0.0', - currencyCode: 'CAD' - }, - webUrl: 'https://checkout.shopify.com/15107238/checkouts/df400853e4dcf6732995195d50f999b1?key=da88309409dfc67d5957752a4c313dba', - order: null, - orderStatusUrl: null, - taxExempt: false, - taxesIncluded: false, - currencyCode: 'CAD', - totalTax: { - amount: '0.0', - currencyCode: 'CAD' - }, - lineItemsSubtotalPrice: { - amount: '0.00', - currencyCode: 'CAD' - }, - subtotalPrice: { - amount: '0.0', - currencyCode: 'CAD' - }, - totalPrice: { - amount: '0.0', - currencyCode: 'CAD' - }, - completedAt: null, - createdAt: '2017-04-10T17:50:11Z', - updatedAt: '2017-04-10T17:50:11Z' - } - } -}; diff --git a/fixtures/checkout-gift-card-remove-fixture.js b/fixtures/checkout-gift-card-remove-fixture.js deleted file mode 100644 index 6c2463299..000000000 --- a/fixtures/checkout-gift-card-remove-fixture.js +++ /dev/null @@ -1,127 +0,0 @@ -export default { - data: { - checkoutGiftCardRemoveV2: { - checkoutUserErrors: [], - userErrors: [], - checkout: { - id: 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8', - appliedGiftCards: [], - createdAt: '2017-03-17T16:00:40Z', - updatedAt: '2017-03-17T16:00:40Z', - requiresShipping: true, - shippingLine: null, - order: null, - orderStatusUrl: null, - taxExempt: false, - taxesIncluded: false, - currencyCode: 'CAD', - totalPrice: { - amount: '80.28', - currencyCode: 'CAD' - }, - lineItemsSubtotalPrice: { - amount: '74.99', - currencyCode: 'CAD' - }, - subtotalPrice: { - amount: '67.50', - currencyCode: 'CAD' - }, - totalTax: { - amount: '8.78', - currencyCode: 'CAD' - }, - paymentDue: { - amount: '80.28', - currencyCode: 'CAD' - }, - completedAt: null, - shippingAddress: { - address1: '123 Cat Road', - address2: null, - city: 'Cat Land', - company: 'Catmart', - country: 'Canada', - firstName: 'Meow', - formatted: [ - 'Catmart', - '123 Cat Road', - 'Cat Land ON M3O 0W1', - 'Canada' - ], - lastName: 'Meowington', - latitude: null, - longitude: null, - phone: '4161234566', - province: 'Ontario', - zip: 'M3O 0W1', - name: 'Meow Meowington', - countryCode: 'CA', - provinceCode: 'ON', - id: '291dC9lM2JkNzHJnnf8a89njNJNKAhu1gn7lMzM5MzFlZj9rZXk9NDcwOTJ==' - }, - lineItems: { - pageInfo: { - hasNextPage: false, - hasPreviousPage: false - }, - edges: [ - { - cursor: 'eyJsYXN0X2lkIjoiZDUyZWU5ZTEwYmQxMWE0NDlkNmQzMWNkMzBhMGFjNzMifQ==', - node: { - title: 'Intelligent Granite Table', - variant: { - id: 'gid://shopify/ProductVariant/29106064584', - price: { - amount: '74.99', - currencyCode: 'CAD' - } - }, - quantity: 5, - customAttributes: [], - discountAllocations: [ - { - allocatedAmount: { - amount: '7.49', - currencyCode: 'CAD' - }, - discountApplication: { - targetSelection: 'ALL', - allocationMethod: 'ACROSS', - targetType: 'LINE_ITEM', - code: 'TENPERCENTOFF', - applicable: true, - value: { - percentage: '10' - } - } - } - ] - } - } - ] - }, - discountApplications: { - pageInfo: { - hasNextPage: false, - hasPreviousPage: false - }, - edges: [ - { - node: { - targetSelection: 'ALL', - allocationMethod: 'ACROSS', - targetType: 'LINE_ITEM', - code: 'TENPERCENTOFF', - applicable: true, - value: { - percentage: '10' - } - } - } - ] - } - } - } - } -}; diff --git a/fixtures/checkout-gift-cards-apply-fixture.js b/fixtures/checkout-gift-cards-apply-fixture.js deleted file mode 100644 index b374dae5a..000000000 --- a/fixtures/checkout-gift-cards-apply-fixture.js +++ /dev/null @@ -1,152 +0,0 @@ -export default { - data: { - checkoutGiftCardsAppend: { - checkoutUserErrors: [], - userErrors: [], - checkout: { - id: 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8', - appliedGiftCards: [ - { - amountUsedV2: { - amount: '45.0', - currencyCode: 'USD' - }, - balanceV2: { - amount: '45.0', - currencyCode: 'USD' - }, - id: 'gid://shopify/AppliedGiftCard/42854580312', - lastCharacters: '949f' - }, - { - amountUsedV2: { - amount: '96.18', - currencyCode: 'USD' - }, - balanceV2: { - amount: '6000.12', - currencyCode: 'USD' - }, - id: 'gid://shopify/AppliedGiftCard/42854613087', - lastCharacters: 'hb6a' - } - ], - createdAt: '2017-03-17T16:00:40Z', - updatedAt: '2017-03-17T16:00:40Z', - requiresShipping: true, - shippingLine: null, - order: null, - orderStatusUrl: null, - taxExempt: false, - taxesIncluded: false, - currencyCode: 'CAD', - totalPrice: { - amount: '80.28', - currencyCode: 'CAD' - }, - lineItemsSubtotalPrice: { - amount: '74.99', - currencyCode: 'CAD' - }, - subtotalPrice: { - amount: '67.50', - currencyCode: 'CAD' - }, - totalTax: { - amount: '8.78', - currencyCode: 'CAD' - }, - paymentDue: { - amount: '80.28', - currencyCode: 'CAD' - }, - completedAt: null, - shippingAddress: { - address1: '123 Cat Road', - address2: null, - city: 'Cat Land', - company: 'Catmart', - country: 'Canada', - firstName: 'Meow', - formatted: [ - 'Catmart', - '123 Cat Road', - 'Cat Land ON M3O 0W1', - 'Canada' - ], - lastName: 'Meowington', - latitude: null, - longitude: null, - phone: '4161234566', - province: 'Ontario', - zip: 'M3O 0W1', - name: 'Meow Meowington', - countryCode: 'CA', - provinceCode: 'ON', - id: '291dC9lM2JkNzHJnnf8a89njNJNKAhu1gn7lMzM5MzFlZj9rZXk9NDcwOTJ==' - }, - lineItems: { - pageInfo: { - hasNextPage: false, - hasPreviousPage: false - }, - edges: [ - { - cursor: 'eyJsYXN0X2lkIjoiZDUyZWU5ZTEwYmQxMWE0NDlkNmQzMWNkMzBhMGFjNzMifQ==', - node: { - title: 'Intelligent Granite Table', - variant: { - id: 'gid://shopify/ProductVariant/29106064584', - price: { - amount: '74.99', - currencyCode: 'CAD' - } - }, - quantity: 5, - customAttributes: [], - discountAllocations: [ - { - allocatedAmount: { - amount: '7.49', - currencyCode: 'CAD' - }, - discountApplication: { - targetSelection: 'ALL', - allocationMethod: 'ACROSS', - targetType: 'LINE_ITEM', - code: 'TENPERCENTOFF', - applicable: true, - value: { - percentage: '10' - } - } - } - ] - } - } - ] - }, - discountApplications: { - pageInfo: { - hasNextPage: false, - hasPreviousPage: false - }, - edges: [ - { - node: { - targetSelection: 'ALL', - allocationMethod: 'ACROSS', - targetType: 'LINE_ITEM', - code: 'TENPERCENTOFF', - applicable: true, - value: { - percentage: '10' - } - } - } - ] - } - } - } - } -}; diff --git a/fixtures/checkout-line-items-add-fixture.js b/fixtures/checkout-line-items-add-fixture.js deleted file mode 100644 index c02357e48..000000000 --- a/fixtures/checkout-line-items-add-fixture.js +++ /dev/null @@ -1,80 +0,0 @@ -export default { - data: { - checkoutLineItemsAdd: { - userErrors: [], - checkoutUserErrors: [], - checkout: { - id: 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8', - createdAt: '2017-03-17T16:00:40Z', - updatedAt: '2017-03-17T16:00:40Z', - requiresShipping: true, - shippingLine: null, - shippingAddress: { - address1: '123 Cat Road', - address2: null, - city: 'Cat Land', - company: 'Catmart', - country: 'Canada', - firstName: 'Meow', - formatted: [ - 'Catmart', - '123 Cat Road', - 'Cat Land ON M3O 0W1', - 'Canada' - ], - lastName: 'Meowington', - latitude: null, - longitude: null, - phone: '4161234566', - province: 'Ontario', - zip: 'M3O 0W1', - name: 'Meow Meowington', - countryCode: 'CA', - provinceCode: 'ON', - id: '291dC9lM2JkNzHJnnf8a89njNJNKAhu1gn7lMzM5MzFlZj9rZXk9NDcwOTJ==' - }, - lineItems: { - pageInfo: { - hasNextPage: false, - hasPreviousPage: false - }, - edges: [ - { - cursor: 'eyJsYXN0X2lkIjoiZDUyZWU5ZTEwYmQxMWE0NDlkNmQzMWNkMzBhMGFjNzMifQ==', - node: { - title: 'Intelligent Granite Table', - variant: { - id: 'gid://shopify/ProductVariant/29106064584' - }, - quantity: 5, - customAttributes: [] - } - }, - { - cursor: 'eyJsYXN0X2lkfsI01DUyZWU5ZTEwYmQxMWE0NDlkNmQzMknK1DKhMGFjNzfAxQ=', - node: { - title: 'Intelligent Marble Table', - variant: { - id: 'gid://shopify/ProductVariant/29106124584' - }, - quantity: 5, - customAttributes: [] - } - }, - { - cursor: 'eyJsYXf3X2dm9aQI01PLqZbU5ZfSEYmQxNWE0NDlkNmQzMknK1DKhMGFj9afKqP=', - node: { - title: 'Intelligent Wooden Table', - variant: { - id: 'gid://shopify/ProductVariant/29104534584' - }, - quantity: 5, - customAttributes: [] - } - } - ] - } - } - } - } -}; diff --git a/fixtures/checkout-line-items-add-with-user-errors-fixture.js b/fixtures/checkout-line-items-add-with-user-errors-fixture.js deleted file mode 100644 index 1d53aed48..000000000 --- a/fixtures/checkout-line-items-add-with-user-errors-fixture.js +++ /dev/null @@ -1,20 +0,0 @@ -export default { - "data": { - "checkoutLineItemsAdd": { - "userErrors": [ - { - "message": "Variant is invalid", - "field": ["lineItems", "0", "variantId"] - } - ], - "checkoutUserErrors": [ - { - "message": "Variant is invalid", - "field": ["lineItems", "0", "variantId"], - "code": "INVALID" - }, - ], - "checkout": null - } - } -}; diff --git a/fixtures/checkout-line-items-remove-fixture.js b/fixtures/checkout-line-items-remove-fixture.js deleted file mode 100644 index bdce616c6..000000000 --- a/fixtures/checkout-line-items-remove-fixture.js +++ /dev/null @@ -1,75 +0,0 @@ -export default { - data: { - checkoutLineItemsRemove: { - userErrors: [], - checkoutUserErrors: [], - checkout: { - id: 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8', - ready: true, - lineItems: { - pageInfo: { - hasNextPage: false, - hasPreviousPage: false - }, - edges: [] - }, - shippingAddress: { - address1: '123 Cat Road', - address2: null, - city: 'Cat Land', - company: 'Catmart', - country: 'Canada', - firstName: 'Meow', - formatted: [ - 'Catmart', - '123 Cat Road', - 'Cat Land ON M3O 0W1', - 'Canada' - ], - lastName: 'Meowington', - latitude: null, - longitude: null, - phone: '4161234566', - province: 'Ontario', - zip: 'M3O 0W1', - name: 'Meow Meowington', - countryCode: 'CA', - provinceCode: 'ON', - id: 'Z2lkOi8vc2hvcGlmeSsiujh8aQJbnkl9Qcm9kdWN0VmaJKN8flqAnq8TEwNjA2NDU4NA==' - }, - shippingLine: null, - requiresShipping: true, - customAttributes: [], - note: null, - paymentDue: { - amount: '367.19', - currencyCode: 'CAD' - }, - webUrl: 'https://checkout.myshopify.io/1/checkouts/c4abf4bf036239ab5e3d0bf93c642c96', - orderStatusUrl: null, - taxExempt: false, - taxesIncluded: false, - currencyCode: 'CAD', - totalTax: { - amount: '42.24', - currencyCode: 'CAD' - }, - lineItemsSubtotalPrice: { - amount: '0.0', - currencyCode: 'CAD' - }, - subtotalPrice: { - amount: '324.95', - currencyCode: 'CAD' - }, - totalPrice: { - amount: '367.19', - currencyCode: 'CAD' - }, - completedAt: null, - createdAt: '2017-03-28T16:58:31Z', - updatedAt: '2017-03-28T16:58:31Z' - } - } - } -}; diff --git a/fixtures/checkout-line-items-remove-with-user-errors-fixture.js b/fixtures/checkout-line-items-remove-with-user-errors-fixture.js deleted file mode 100644 index 0f89019cc..000000000 --- a/fixtures/checkout-line-items-remove-with-user-errors-fixture.js +++ /dev/null @@ -1,20 +0,0 @@ -export default { - "data": { - "checkoutLineItemsRemove": { - "userErrors": [ - { - "message": "Line item with id abcdefgh not found", - "field": null, - } - ], - "checkoutUserErrors": [ - { - "message": "Line item with id abcdefgh not found", - "field": null, - "code": "LINE_ITEM_NOT_FOUND" - } - ], - "checkout": null - } - } -}; diff --git a/fixtures/checkout-line-items-replace-fixture.js b/fixtures/checkout-line-items-replace-fixture.js deleted file mode 100644 index ec0444af5..000000000 --- a/fixtures/checkout-line-items-replace-fixture.js +++ /dev/null @@ -1,79 +0,0 @@ -export default { - data: { - checkoutLineItemsReplace: { - userErrors: [], - checkout: { - id: 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8', - createdAt: '2017-03-17T16:00:40Z', - updatedAt: '2017-03-17T16:00:40Z', - requiresShipping: true, - shippingLine: null, - shippingAddress: { - address1: '123 Cat Road', - address2: null, - city: 'Cat Land', - company: 'Catmart', - country: 'Canada', - firstName: 'Meow', - formatted: [ - 'Catmart', - '123 Cat Road', - 'Cat Land ON M3O 0W1', - 'Canada' - ], - lastName: 'Meowington', - latitude: null, - longitude: null, - phone: '4161234566', - province: 'Ontario', - zip: 'M3O 0W1', - name: 'Meow Meowington', - countryCode: 'CA', - provinceCode: 'ON', - id: '291dC9lM2JkNzHJnnf8a89njNJNKAhu1gn7lMzM5MzFlZj9rZXk9NDcwOTJ==' - }, - lineItems: { - pageInfo: { - hasNextPage: false, - hasPreviousPage: false - }, - edges: [ - { - cursor: 'eyJsYXN0X2lkIjoiZDUyZWU5ZTEwYmQxMWE0NDlkNmQzMWNkMzBhMGFjNzMifQ==', - node: { - title: 'Intelligent Granite Table', - variant: { - id: 'gid://shopify/ProductVariant/29106064584' - }, - quantity: 5, - customAttributes: [] - } - }, - { - cursor: 'eyJsYXN0X2lkfsI01DUyZWU5ZTEwYmQxMWE0NDlkNmQzMknK1DKhMGFjNzfAxQ=', - node: { - title: 'Intelligent Marble Table', - variant: { - id: 'gid://shopify/ProductVariant/29106078484' - }, - quantity: 5, - customAttributes: [] - } - }, - { - cursor: 'eyJsYXf3X2dm9aQI01PLqZbU5ZfSEYmQxNWE0NDlkNmQzMknK1DKhMGFj9afKqP=', - node: { - title: 'Intelligent Wooden Table', - variant: { - id: 'gid://shopify/ProductVariant/29104534584' - }, - quantity: 5, - customAttributes: [] - } - } - ] - } - } - } - } -}; diff --git a/fixtures/checkout-line-items-replace-with-user-errors-fixture.js b/fixtures/checkout-line-items-replace-with-user-errors-fixture.js deleted file mode 100644 index 70cd193ca..000000000 --- a/fixtures/checkout-line-items-replace-with-user-errors-fixture.js +++ /dev/null @@ -1,14 +0,0 @@ -export default { - "data": { - "checkoutLineItemsReplace": { - "userErrors": [ - { - "message": "Variant is invalid", - "field": ['lineItems', '0', 'variantId'], - "code": "INVALID" - } - ], - "checkout": null - } - } -}; diff --git a/fixtures/checkout-line-items-update-fixture.js b/fixtures/checkout-line-items-update-fixture.js deleted file mode 100644 index 415a418c4..000000000 --- a/fixtures/checkout-line-items-update-fixture.js +++ /dev/null @@ -1,95 +0,0 @@ -export default { - data: { - checkoutLineItemsUpdate: { - userErrors: [], - checkoutUserErrors: [], - checkout: { - id: 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8', - ready: true, - lineItems: { - pageInfo: { - hasNextPage: false, - hasPreviousPage: false - }, - edges: [ - { - cursor: 'eyJsYXN0X2lkIjoiZmI3MTEwMmYwZDM4ZGU0NmUwMzdiMzBmODE3ZTlkYjUifQ==', - node: { - id: 'gid://shopify/CheckoutLineItem/194677729198640?checkout=e3bd71f7248c806f33725a53e33931ef', - title: 'Arena Zip Boot', - variant: { - id: 'gid://shopify/ProductVariant/29106064584', - title: 'Black / 8', - price: { - amount: '188.0', - currencyCode: 'CAD' - }, - compareAtPrice: { - amount: '190.0', - currencyCode: 'CAD' - }, - weight: 0, - image: { - id: 'gid://shopify/ProductImage/18217790664', - src: 'https://cdn.shopify.com/s/files/1/1312/0893/products/003_3e206539-20d3-49c0-8bff-006e449906ca.jpg?v=1491850970', - altText: null - }, - selectedOptions: [ - { - name: 'Color', - value: 'Black' - }, - { - name: 'Size', - value: '8' - } - ] - }, - quantity: 2, - customAttributes: [ - - ] - } - } - ] - }, - shippingAddress: null, - shippingLine: null, - requiresShipping: true, - customAttributes: [ - - ], - note: null, - paymentDue: { - amount: '376.0', - currencyCode: 'CAD' - }, - webUrl: 'https://checkout.shopify.com/13120893/checkouts/e28b55a3205f8d129a9b7223287ec95a?key=191add76e8eba90b93cfe4d5d261c4cb', - order: null, - orderStatusUrl: null, - taxExempt: false, - taxesIncluded: false, - currencyCode: 'CAD', - totalTax: { - amount: '0.0', - currencyCode: 'CAD' - }, - lineItemsSubtotalPrice: { - amount: '376.0', - currencyCode: 'CAD' - }, - subtotalPrice: { - amount: '376.0', - currencyCode: 'CAD' - }, - totalPrice: { - amount: '376.0', - currencyCode: 'CAD' - }, - completedAt: null, - createdAt: '2017-04-13T21:54:16Z', - updatedAt: '2017-04-13T21:54:17Z' - } - } - } -}; diff --git a/fixtures/checkout-line-items-update-with-user-errors-fixture.js b/fixtures/checkout-line-items-update-with-user-errors-fixture.js deleted file mode 100644 index bb4aaca43..000000000 --- a/fixtures/checkout-line-items-update-with-user-errors-fixture.js +++ /dev/null @@ -1,20 +0,0 @@ -export default { - "data":{ - "checkoutLineItemsUpdate":{ - "userErrors": [ - { - "message": "Variant is invalid", - "field": ['lineItems', '0', 'variantId'] - } - ], - "checkoutUserErrors": [ - { - "message": "Variant is invalid", - "field": ['lineItems', '0', 'variantId'], - "code": "INVALID" - } - ], - "checkout": null - } - } -}; diff --git a/fixtures/checkout-shipping-address-update-v2-fixture.js b/fixtures/checkout-shipping-address-update-v2-fixture.js deleted file mode 100644 index 772128332..000000000 --- a/fixtures/checkout-shipping-address-update-v2-fixture.js +++ /dev/null @@ -1,89 +0,0 @@ -export default { - data: { - checkoutShippingAddressUpdateV2: { - userErrors: [], - checkoutUserErrors: [], - checkout: { - id: 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8', - createdAt: '2017-03-17T16:00:40Z', - updatedAt: '2017-03-17T16:00:40Z', - requiresShipping: true, - shippingLine: null, - order: null, - orderStatusUrl: null, - taxExempt: false, - taxesIncluded: false, - currencyCode: 'CAD', - lineItemsSubtotalPrice: { - amount: '374.95', - currencyCode: 'CAD' - }, - totalPrice: { - amount: '80.28', - currencyCode: 'CAD' - }, - subtotalPrice: { - amount: '67.5', - currencyCode: 'CAD' - }, - totalTax: { - amount: '8.78', - currencyCode: 'CAD' - }, - paymentDue: { - amount: '80.28', - currencyCode: 'CAD' - }, - completedAt: null, - shippingAddress: { - id: 'Z2lkOi8vc2hvcGlmeS9NYWlsaW5nQWRkcmVzcy8xMTAyNDgxNzE5MzE4P21vZGVsX25hbWU9QWRkcmVzcw==', - address1: 'Chestnut Street 92', - address2: 'Apartment 2', - city: 'Louisville', - company: null, - country: 'United States', - firstName: 'Bob', - formatted: [ - 'Chestnut Street 92', - 'Apartment 2', - 'Louisville KY 40202', - 'United States' - ], - lastName: 'Norman', - latitude: null, - longitude: null, - phone: '555-625-1199', - province: 'Kentucky', - zip: '40202', - name: 'Bob Norman', - countryCode: 'US', - provinceCode: 'KY' - }, - lineItems: { - pageInfo: { - hasNextPage: false, - hasPreviousPage: false - }, - edges: [ - { - cursor: 'eyJsYXN0X2lkIjoiZDUyZWU5ZTEwYmQxMWE0NDlkNmQzMWNkMzBhMGFjNzMifQ==', - node: { - title: 'Intelligent Granite Table', - variant: { - id: 'gid://shopify/ProductVariant/29106064584', - price: { - amount: '74.99', - currencyCode: 'CAD' - } - }, - quantity: 5, - customAttributes: [], - discountAllocations: [] - } - } - ] - } - } - } - } -}; diff --git a/fixtures/checkout-shipping-address-update-v2-with-user-errors-fixture.js b/fixtures/checkout-shipping-address-update-v2-with-user-errors-fixture.js deleted file mode 100644 index c523fa9b3..000000000 --- a/fixtures/checkout-shipping-address-update-v2-with-user-errors-fixture.js +++ /dev/null @@ -1,20 +0,0 @@ -export default { - "data": { - "checkoutShippingAddressUpdateV2": { - "userErrors": [ - { - "message": 'Country is not supported', - "field": ['shippingAddress', 'country'], - }, - ], - "checkoutUserErrors" : [ - { - "message": 'Country is not supported', - "field": ['shippingAddress', 'country'], - "code": 'NOT_SUPPORTED' - } - ], - "checkout": null - } - } -}; \ No newline at end of file diff --git a/fixtures/checkout-update-custom-attrs-fixture.js b/fixtures/checkout-update-custom-attrs-fixture.js deleted file mode 100644 index 9c80064ca..000000000 --- a/fixtures/checkout-update-custom-attrs-fixture.js +++ /dev/null @@ -1,100 +0,0 @@ -export default { - data: { - checkoutAttributesUpdateV2: { - checkoutUserErrors: [], - userErrors: [], - checkout: { - id: 'gid://shopify/Checkout/t51d71f7248c806f33725a53e33931ef?key=47092e448529068d2ce52e5051603af8', - ready: true, - lineItems: { - pageInfo: { - hasNextPage: false, - hasPreviousPage: false - }, - edges: [ - { - cursor: 'eyJsYXN0X2lkIjoiZDUyZWU5ZTEwYmQxMWE0NDlkNmQzMWNkMzBhMGFjNzMifQ==', - node: { - title: 'Intelligent Granite Table', - variant: { - id: 'gid://shopify/ProductVariant/29106064584', - title: 'Awesome Copper Bench', - price: { - amount: '64.99', - currencyCode: 'CAD' - }, - weight: 4.5, - image: null, - selectedOptions: [ - { - name: 'Color or something', - value: 'Awesome Copper Bench' - } - ] - }, - quantity: 5, - customAttributes: [] - } - } - ] - }, - shippingAddress: { - address1: '123 Cat Road', - address2: null, - city: 'Cat Land', - company: 'Catmart', - country: 'Canada', - firstName: 'Meow', - formatted: [ - 'Catmart', - '123 Cat Road', - 'Cat Land ON M3O 0W1', - 'Canada' - ], - lastName: 'Meowington', - latitude: null, - longitude: null, - phone: '4161234566', - province: 'Ontario', - zip: 'M3O 0W1', - name: 'Meow Meowington', - countryCode: 'CA', - provinceCode: 'ON', - id: 'Z2lkOi8vc2hvcGlmeS9QcmdfnAU8nakdWMnAbh890hyOTEwNjA2NDU4NA==' - }, - shippingLine: null, - requiresShipping: true, - customAttributes: [{key: 'MyKey', value: 'MyValue'}], - note: null, - paymentDue: { - amount: '367.19', - currencyCode: 'CAD' - }, - webUrl: 'https://checkout.myshopify.io/1/checkouts/c4abf4bf036239ab5e3d0bf93c642c96', - orderStatusUrl: null, - taxExempt: false, - taxesIncluded: false, - currencyCode: 'CAD', - totalTax: { - amount: '42.24', - currencyCode: 'CAD' - }, - lineItemsSubtotalPrice: { - amount: '324.95', - currencyCode: 'CAD' - }, - subtotalPrice: { - amount: '324.95', - currencyCode: 'CAD' - }, - totalPrice: { - amount: '367.19', - currencyCode: 'CAD' - }, - completedAt: null, - createdAt: '2017-03-28T16:58:31Z', - updatedAt: '2017-03-28T16:58:31Z' - } - } - } -}; diff --git a/fixtures/checkout-update-custom-attrs-with-user-errors-fixture.js b/fixtures/checkout-update-custom-attrs-with-user-errors-fixture.js deleted file mode 100644 index adc566e6a..000000000 --- a/fixtures/checkout-update-custom-attrs-with-user-errors-fixture.js +++ /dev/null @@ -1,20 +0,0 @@ -export default { - "data": { - "checkoutAttributesUpdateV2": { - "checkoutUserErrors": [ - { - "message": "Note is too long (maximum is 5000 characters)", - "field": ['input', 'note'], - "code": "TOO_LONG" - } - ], - "userErrors": [ - { - "message": "Note is too long (maximum is 5000 characters)", - "field": ['input', 'note'] - } - ], - "checkout": null - } - } -}; diff --git a/fixtures/checkout-update-email-fixture.js b/fixtures/checkout-update-email-fixture.js deleted file mode 100644 index 7afe4f890..000000000 --- a/fixtures/checkout-update-email-fixture.js +++ /dev/null @@ -1,101 +0,0 @@ -export default { - data: { - checkoutEmailUpdateV2: { - checkoutUserErrors: [], - userErrors: [], - checkout: { - id: 'gid://shopify/Checkout/t51d71f7248c806f33725a53e33931ef?key=47092e448529068d2ce52e5051603af8', - ready: true, - lineItems: { - pageInfo: { - hasNextPage: false, - hasPreviousPage: false - }, - edges: [ - { - cursor: 'eyJsYXN0X2lkIjoiZDUyZWU5ZTEwYmQxMWE0NDlkNmQzMWNkMzBhMGFjNzMifQ==', - node: { - title: 'Intelligent Granite Table', - variant: { - id: 'gid://shopify/ProductVariant/29106064584', - title: 'Awesome Copper Bench', - price: { - amount: '64.99', - currencyCode: 'CAD' - }, - weight: 4.5, - image: null, - selectedOptions: [ - { - name: 'Color or something', - value: 'Awesome Copper Bench' - } - ] - }, - quantity: 5, - customAttributes: [] - } - } - ] - }, - shippingAddress: { - address1: '123 Cat Road', - address2: null, - city: 'Cat Land', - company: 'Catmart', - country: 'Canada', - firstName: 'Meow', - formatted: [ - 'Catmart', - '123 Cat Road', - 'Cat Land ON M3O 0W1', - 'Canada' - ], - lastName: 'Meowington', - latitude: null, - longitude: null, - phone: '4161234566', - province: 'Ontario', - zip: 'M3O 0W1', - name: 'Meow Meowington', - countryCode: 'CA', - provinceCode: 'ON', - id: 'Z2lkOi8vc2hvcGlmeS9QcmdfnAU8nakdWMnAbh890hyOTEwNjA2NDU4NA==' - }, - shippingLine: null, - requiresShipping: true, - email: 'user@example.com', - customAttributes: [{key: 'MyKey', value: 'MyValue'}], - note: null, - paymentDue: { - amount: '367.19', - currencyCode: 'CAD' - }, - webUrl: 'https://checkout.myshopify.io/1/checkouts/c4abf4bf036239ab5e3d0bf93c642c96', - orderStatusUrl: null, - taxExempt: false, - taxesIncluded: false, - currencyCode: 'CAD', - totalTax: { - amount: '42.24', - currencyCode: 'CAD' - }, - lineItemsSubtotalPrice: { - amount: '324.95', - currencyCode: 'CAD' - }, - subtotalPrice: { - amount: '324.95', - currencyCode: 'CAD' - }, - totalPrice: { - amount: '367.19', - currencyCode: 'CAD' - }, - completedAt: null, - createdAt: '2017-03-28T16:58:31Z', - updatedAt: '2017-03-28T16:58:31Z' - } - } - } -}; diff --git a/fixtures/checkout-update-email-with-user-errors-fixture.js b/fixtures/checkout-update-email-with-user-errors-fixture.js deleted file mode 100644 index 9006b5d75..000000000 --- a/fixtures/checkout-update-email-with-user-errors-fixture.js +++ /dev/null @@ -1,20 +0,0 @@ -export default { - "data": { - "checkoutEmailUpdateV2": { - "checkoutUserErrors": [ - { - "message": "Email is invalid", - "field": ['email'], - "code": "INVALID" - } - ], - "userErrors": [ - { - "message": "Email is invalid", - "field": ['email'], - } - ], - "checkout": null - } - } -}; diff --git a/fixtures/checkout-with-paginated-line-items-fixture.js b/fixtures/checkout-with-paginated-line-items-fixture.js deleted file mode 100644 index 760177c7e..000000000 --- a/fixtures/checkout-with-paginated-line-items-fixture.js +++ /dev/null @@ -1,74 +0,0 @@ -export default { - data: { - node: { - id: 'gid://shopify/Checkout/e3bd71f7248c806f33725a53e33931ef?key=47092e448529068d1be52e5051603af8', - ready: true, - lineItems: { - pageInfo: { - hasNextPage: true, - hasPreviousPage: false - }, - edges: [ - { - cursor: 'eyJsYXN0X2lkIjoiZDUyZWU5ZTEwYmQxMWE0NDlkNmQzMWNkMzBhMGFjNzMifQ==', - node: { - title: 'Intelligent Granite Table', - variant: { - id: 'gid://shopify/Product/7857989384', - title: 'Awesome Copper Bench', - price: { - amount: '64.99', - currencyCode: 'CAD' - }, - weight: 4.5, - image: null, - selectedOptions: [ - { - name: 'Color or something', - value: 'Awesome Copper Bench' - } - ] - }, - quantity: 5, - customAttributes: [] - } - } - ] - }, - shippingAddress: null, - shippingLine: null, - requiresShipping: true, - customAttributes: [], - note: null, - paymentDue: { - amount: '367.19', - currencyCode: 'CAD' - }, - webUrl: 'https://checkout.myshopify.io/1/checkouts/c4abf4bf036239ab5e3d0bf93c642c96', - order: null, - orderStatusUrl: null, - taxExempt: false, - taxesIncluded: false, - currencyCode: 'CAD', - totalTax: { - amount: '42.24', - currencyCode: 'CAD' - }, - lineItemsSubtotalPrice: { - amount: '324.95', - currencyCode: 'CAD' - }, - subtotalPrice: { - amount: '324.95', - currencyCode: 'CAD' - }, - totalPrice: { - amount: '367.19', - currencyCode: 'CAD' - }, - completedAt: null, - createdAt: '2017-03-28T16:58:31Z', - updatedAt: '2017-03-28T16:58:31Z' - } - } -}; diff --git a/src/checkout-resource.js b/src/checkout-resource.js deleted file mode 100644 index 878dd5ab0..000000000 --- a/src/checkout-resource.js +++ /dev/null @@ -1,331 +0,0 @@ -import Resource from './resource'; -import defaultResolver from './default-resolver'; -import handleCheckoutMutation from './handle-checkout-mutation'; - -// GraphQL -import checkoutNodeQuery from './graphql/checkoutNodeQuery.graphql'; -import checkoutCreateMutation from './graphql/checkoutCreateMutation.graphql'; -import checkoutLineItemsAddMutation from './graphql/checkoutLineItemsAddMutation.graphql'; -import checkoutLineItemsRemoveMutation from './graphql/checkoutLineItemsRemoveMutation.graphql'; -import checkoutLineItemsReplaceMutation from './graphql/checkoutLineItemsReplaceMutation.graphql'; -import checkoutLineItemsUpdateMutation from './graphql/checkoutLineItemsUpdateMutation.graphql'; -import checkoutAttributesUpdateV2Mutation from './graphql/checkoutAttributesUpdateV2Mutation.graphql'; -import checkoutDiscountCodeApplyV2Mutation from './graphql/checkoutDiscountCodeApplyV2Mutation.graphql'; -import checkoutDiscountCodeRemoveMutation from './graphql/checkoutDiscountCodeRemoveMutation.graphql'; -import checkoutGiftCardsAppendMutation from './graphql/checkoutGiftCardsAppendMutation.graphql'; -import checkoutGiftCardRemoveV2Mutation from './graphql/checkoutGiftCardRemoveV2Mutation.graphql'; -import checkoutEmailUpdateV2Mutation from './graphql/checkoutEmailUpdateV2Mutation.graphql'; -import checkoutShippingAddressUpdateV2Mutation from './graphql/checkoutShippingAddressUpdateV2Mutation.graphql'; - -/** - * The JS Buy SDK checkout resource - * @class - */ -class CheckoutResource extends Resource { - - /** - * Fetches a checkout by ID. - * - * @example - * client.checkout.fetch('FlZj9rZXlN5MDY4ZDFiZTUyZTUwNTE2MDNhZjg=').then((checkout) => { - * // Do something with the checkout - * }); - * - * @param {String} id The id of the checkout to fetch. - * @return {Promise|GraphModel} A promise resolving with a `GraphModel` of the checkout. - */ - fetch(id) { - return this.graphQLClient - .send(checkoutNodeQuery, {id}) - .then(defaultResolver('node')) - .then((checkout) => { - if (!checkout) { return null; } - - return this.graphQLClient.fetchAllPages(checkout.lineItems, {pageSize: 250}).then((lineItems) => { - checkout.attrs.lineItems = lineItems; - - return checkout; - }); - }); - } - - /** - * Creates a checkout. - * - * @example - * const input = { - * lineItems: [ - * {variantId: 'Z2lkOi8vc2hvcGlmeS9Qcm9kdWN0VmFyaWFudC8yOTEwNjAyMjc5Mg==', quantity: 5} - * ] - * }; - * - * client.checkout.create(input).then((checkout) => { - * // Do something with the newly created checkout - * }); - * - * @param {Object} [input] An input object containing zero or more of: - * @param {String} [input.email] An email connected to the checkout. - * @param {Object[]} [input.lineItems] A list of line items in the checkout. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/checkoutlineiteminput|Storefront API reference} for valid input fields for each line item. - * @param {Object} [input.shippingAddress] A shipping address. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/mailingaddressinput|Storefront API reference} for valid input fields. - * @param {String} [input.note] A note for the checkout. - * @param {Object[]} [input.customAttributes] A list of custom attributes for the checkout. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/attributeinput|Storefront API reference} for valid input fields. - * @param {String} [input.presentmentCurrencyCode ] A presentment currency code. See the {@link https://help.shopify.com/en/api/storefront-api/reference/enum/currencycode|Storefront API reference} for valid currency code values. - * @return {Promise|GraphModel} A promise resolving with the created checkout. - */ - create(input = {}) { - return this.graphQLClient - .send(checkoutCreateMutation, {input}) - .then(handleCheckoutMutation('checkoutCreate', this.graphQLClient)); - } - - /** - * Replaces the value of checkout's custom attributes and/or note with values defined in the input - * - * @example - * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; - * const input = {customAttributes: [{key: "MyKey", value: "MyValue"}]}; - * - * client.checkout.updateAttributes(checkoutId, input).then((checkout) => { - * // Do something with the updated checkout - * }); - * - * @param {String} checkoutId The ID of the checkout to update. - * @param {Object} [input] An input object containing zero or more of: - * @param {Boolean} [input.allowPartialAddresses] An email connected to the checkout. - * @param {Object[]} [input.customAttributes] A list of custom attributes for the checkout. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/attributeinput|Storefront API reference} for valid input fields. - * @param {String} [input.note] A note for the checkout. - * @return {Promise|GraphModel} A promise resolving with the updated checkout. - */ - updateAttributes(checkoutId, input = {}) { - return this.graphQLClient - .send(checkoutAttributesUpdateV2Mutation, {checkoutId, input}) - .then(handleCheckoutMutation('checkoutAttributesUpdateV2', this.graphQLClient)); - } - - /** - * Replaces the value of checkout's email address - * - * @example - * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; - * const email = 'user@example.com'; - * - * client.checkout.updateEmail(checkoutId, email).then((checkout) => { - * // Do something with the updated checkout - * }); - * - * @param {String} checkoutId The ID of the checkout to update. - * @param {String} email The email address to apply to the checkout. - * @return {Promise|GraphModel} A promise resolving with the updated checkout. - */ - updateEmail(checkoutId, email) { - return this.graphQLClient - .send(checkoutEmailUpdateV2Mutation, {checkoutId, email}) - .then(handleCheckoutMutation('checkoutEmailUpdateV2', this.graphQLClient)); - } - - /** - * Adds line items to an existing checkout. - * - * @example - * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; - * const lineItems = [{variantId: 'Z2lkOi8vc2hvcGlmeS9Qcm9kdWN0VmFyaWFudC8yOTEwNjAyMjc5Mg==', quantity: 5}]; - * - * client.checkout.addLineItems(checkoutId, lineItems).then((checkout) => { - * // Do something with the updated checkout - * }); - * - * @param {String} checkoutId The ID of the checkout to add line items to. - * @param {Object[]} lineItems A list of line items to add to the checkout. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/checkoutlineiteminput|Storefront API reference} for valid input fields for each line item. - * @return {Promise|GraphModel} A promise resolving with the updated checkout. - */ - addLineItems(checkoutId, lineItems) { - return this.graphQLClient - .send(checkoutLineItemsAddMutation, {checkoutId, lineItems}) - .then(handleCheckoutMutation('checkoutLineItemsAdd', this.graphQLClient)); - } - - /** - * Applies a discount to an existing checkout using a discount code. - * - * @example - * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; - * const discountCode = 'best-discount-ever'; - * - * client.checkout.addDiscount(checkoutId, discountCode).then((checkout) => { - * // Do something with the updated checkout - * }); - * - * @param {String} checkoutId The ID of the checkout to add discount to. - * @param {String} discountCode The discount code to apply to the checkout. - * @return {Promise|GraphModel} A promise resolving with the updated checkout. - */ - addDiscount(checkoutId, discountCode) { - return this.graphQLClient - .send(checkoutDiscountCodeApplyV2Mutation, {checkoutId, discountCode}) - .then(handleCheckoutMutation('checkoutDiscountCodeApplyV2', this.graphQLClient)); - } - - /** - * Removes the applied discount from an existing checkout. - * - * @example - * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; - * - * client.checkout.removeDiscount(checkoutId).then((checkout) => { - * // Do something with the updated checkout - * }); - * - * @param {String} checkoutId The ID of the checkout to remove the discount from. - * @return {Promise|GraphModel} A promise resolving with the updated checkout. - */ - removeDiscount(checkoutId) { - return this.graphQLClient - .send(checkoutDiscountCodeRemoveMutation, {checkoutId}) - .then(handleCheckoutMutation('checkoutDiscountCodeRemove', this.graphQLClient)); - } - - /** - * Applies gift cards to an existing checkout using a list of gift card codes - * - * @example - * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; - * const giftCardCodes = ['6FD8853DAGAA949F']; - * - * client.checkout.addGiftCards(checkoutId, giftCardCodes).then((checkout) => { - * // Do something with the updated checkout - * }); - * - * @param {String} checkoutId The ID of the checkout to add gift cards to. - * @param {String[]} giftCardCodes The gift card codes to apply to the checkout. - * @return {Promise|GraphModel} A promise resolving with the updated checkout. - */ - addGiftCards(checkoutId, giftCardCodes) { - return this.graphQLClient - .send(checkoutGiftCardsAppendMutation, {checkoutId, giftCardCodes}) - .then(handleCheckoutMutation('checkoutGiftCardsAppend', this.graphQLClient)); - } - - /** - * Remove a gift card from an existing checkout - * - * @example - * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; - * const appliedGiftCardId = 'Z2lkOi8vc2hvcGlmeS9BcHBsaWVkR2lmdENhcmQvNDI4NTQ1ODAzMTI='; - * - * client.checkout.removeGiftCard(checkoutId, appliedGiftCardId).then((checkout) => { - * // Do something with the updated checkout - * }); - * - * @param {String} checkoutId The ID of the checkout to add gift cards to. - * @param {String} appliedGiftCardId The gift card id to remove from the checkout. - * @return {Promise|GraphModel} A promise resolving with the updated checkout. - */ - removeGiftCard(checkoutId, appliedGiftCardId) { - return this.graphQLClient - .send(checkoutGiftCardRemoveV2Mutation, {checkoutId, appliedGiftCardId}) - .then(handleCheckoutMutation('checkoutGiftCardRemoveV2', this.graphQLClient)); - } - - /** - * Removes line items from an existing checkout. - * - * @example - * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; - * const lineItemIds = ['TViZGE5Y2U1ZDFhY2FiMmM2YT9rZXk9NTc2YjBhODcwNWIxYzg0YjE5ZjRmZGQ5NjczNGVkZGU=']; - * - * client.checkout.removeLineItems(checkoutId, lineItemIds).then((checkout) => { - * // Do something with the updated checkout - * }); - * - * @param {String} checkoutId The ID of the checkout to remove line items from. - * @param {String[]} lineItemIds A list of the ids of line items to remove from the checkout. - * @return {Promise|GraphModel} A promise resolving with the updated checkout. - */ - removeLineItems(checkoutId, lineItemIds) { - return this.graphQLClient - .send(checkoutLineItemsRemoveMutation, {checkoutId, lineItemIds}) - .then(handleCheckoutMutation('checkoutLineItemsRemove', this.graphQLClient)); - } - - /** - * Replace line items on an existing checkout. - * - * @example - * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; - * const lineItems = [{variantId: 'Z2lkOi8vc2hvcGlmeS9Qcm9kdWN0VmFyaWFudC8yOTEwNjAyMjc5Mg==', quantity: 5}]; - * - * client.checkout.replaceLineItems(checkoutId, lineItems).then((checkout) => { - * // Do something with the updated checkout - * }); - * - * @param {String} checkoutId The ID of the checkout to add line items to. - * @param {Object[]} lineItems A list of line items to set on the checkout. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/checkoutlineiteminput|Storefront API reference} for valid input fields for each line item. - * @return {Promise|GraphModel} A promise resolving with the updated checkout. - */ - replaceLineItems(checkoutId, lineItems) { - return this.graphQLClient - .send(checkoutLineItemsReplaceMutation, {checkoutId, lineItems}) - .then(handleCheckoutMutation('checkoutLineItemsReplace', this.graphQLClient)); - } - - /** - * Updates line items on an existing checkout. - * - * @example - * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; - * const lineItems = [ - * { - * id: 'TViZGE5Y2U1ZDFhY2FiMmM2YT9rZXk9NTc2YjBhODcwNWIxYzg0YjE5ZjRmZGQ5NjczNGVkZGU=', - * quantity: 5, - * variantId: 'Z2lkOi8vc2hvcGlmeS9Qcm9kdWN0VmFyaWFudC8yOTEwNjAyMjc5Mg==' - * } - * ]; - * - * client.checkout.updateLineItems(checkoutId, lineItems).then(checkout => { - * // Do something with the updated checkout - * }); - * - * @param {String} checkoutId The ID of the checkout to update a line item on. - * @param {Object[]} lineItems A list of line item information to update. See the {@link https://help.shopify.com/api/storefront-api/reference/input-object/checkoutlineitemupdateinput|Storefront API reference} for valid input fields for each line item. - * @return {Promise|GraphModel} A promise resolving with the updated checkout. - */ - updateLineItems(checkoutId, lineItems) { - return this.graphQLClient - .send(checkoutLineItemsUpdateMutation, {checkoutId, lineItems}) - .then(handleCheckoutMutation('checkoutLineItemsUpdate', this.graphQLClient)); - } - - /** - * Updates shipping address on an existing checkout. - * - * @example - * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N='; - * const shippingAddress = { - * address1: 'Chestnut Street 92', - * address2: 'Apartment 2', - * city: 'Louisville', - * company: null, - * country: 'United States', - * firstName: 'Bob', - * lastName: 'Norman', - * phone: '555-625-1199', - * province: 'Kentucky', - * zip: '40202' - * }; - * - * client.checkout.updateShippingAddress(checkoutId, shippingAddress).then(checkout => { - * // Do something with the updated checkout - * }); - * - * @param {String} checkoutId The ID of the checkout to update shipping address. - * @param {Object} shippingAddress A shipping address. - * @return {Promise|GraphModel} A promise resolving with the updated checkout. - */ - updateShippingAddress(checkoutId, shippingAddress) { - return this.graphQLClient - .send(checkoutShippingAddressUpdateV2Mutation, {checkoutId, shippingAddress}) - .then(handleCheckoutMutation('checkoutShippingAddressUpdateV2', this.graphQLClient)); - } -} - -export default CheckoutResource; diff --git a/src/graphql/CheckoutFragment.graphql b/src/graphql/CheckoutFragment.graphql deleted file mode 100644 index 79b908a1a..000000000 --- a/src/graphql/CheckoutFragment.graphql +++ /dev/null @@ -1,204 +0,0 @@ -fragment MailingAddressFragment on MailingAddress { - id - address1 - address2 - city - company - country - firstName - formatted - lastName - latitude - longitude - phone - province - zip - name - countryCode: countryCodeV2 - provinceCode -} - -fragment CheckoutFragment on Checkout { - id - ready - requiresShipping - note - paymentDue { - amount - currencyCode - } - paymentDueV2: paymentDue { - amount - currencyCode - } - webUrl - orderStatusUrl - taxExempt - taxesIncluded - currencyCode - totalTax { - amount - currencyCode - } - totalTaxV2: totalTax { - amount - currencyCode - } - lineItemsSubtotalPrice { - amount - currencyCode - } - subtotalPrice { - amount - currencyCode - } - subtotalPriceV2: subtotalPrice { - amount - currencyCode - } - totalPrice { - amount - currencyCode - } - totalPriceV2: totalPrice { - amount - currencyCode - } - completedAt - createdAt - updatedAt - email - discountApplications(first: 10) { - pageInfo { - hasNextPage - hasPreviousPage - } - edges { - node { - ...DiscountApplicationFragment - } - } - } - appliedGiftCards { - ...AppliedGiftCardFragment - } - shippingAddress { - ...MailingAddressFragment - } - shippingLine { - handle - price { - amount - currencyCode - } - priceV2: price { - amount - currencyCode - } - title - } - customAttributes { - key - value - } - order { - id - processedAt - orderNumber - subtotalPrice { - amount - currencyCode - } - subtotalPriceV2: subtotalPrice { - amount - currencyCode - } - totalShippingPrice { - amount - currencyCode - } - totalShippingPriceV2: totalShippingPrice { - amount - currencyCode - } - totalTax { - amount - currencyCode - } - totalTaxV2: totalTax { - amount - currencyCode - } - totalPrice { - amount - currencyCode - } - totalPriceV2: totalPrice { - amount - currencyCode - } - currencyCode - totalRefunded { - amount - currencyCode - } - totalRefundedV2: totalRefunded{ - amount - currencyCode - } - customerUrl - shippingAddress { - ...MailingAddressFragment - } - lineItems (first: 250) { - pageInfo { - hasNextPage - hasPreviousPage - } - edges { - cursor - node { - title - variant { - ...VariantWithProductFragment - } - quantity - customAttributes { - key - value - } - } - } - } - } - lineItems (first: 250) { - pageInfo { - hasNextPage - hasPreviousPage - } - edges { - cursor - node { - id - title - variant { - ...VariantWithProductFragment - } - quantity - customAttributes { - key - value - } - discountAllocations { - allocatedAmount { - amount - currencyCode - } - discountApplication { - ...DiscountApplicationFragment - } - } - } - } - } -} diff --git a/src/graphql/CheckoutUserErrorFragment.graphql b/src/graphql/CheckoutUserErrorFragment.graphql deleted file mode 100644 index c94a2d5c2..000000000 --- a/src/graphql/CheckoutUserErrorFragment.graphql +++ /dev/null @@ -1,5 +0,0 @@ -fragment CheckoutUserErrorFragment on CheckoutUserError { - field - message - code -} diff --git a/src/graphql/checkoutAttributesUpdateV2Mutation.graphql b/src/graphql/checkoutAttributesUpdateV2Mutation.graphql deleted file mode 100644 index c4c402577..000000000 --- a/src/graphql/checkoutAttributesUpdateV2Mutation.graphql +++ /dev/null @@ -1,13 +0,0 @@ -mutation checkoutAttributesUpdateV2($checkoutId: ID!, $input: CheckoutAttributesUpdateV2Input!) { - checkoutAttributesUpdateV2(checkoutId: $checkoutId, input: $input) { - userErrors { - ...UserErrorFragment - } - checkoutUserErrors { - ...CheckoutUserErrorFragment - } - checkout { - ...CheckoutFragment - } - } -} diff --git a/src/graphql/checkoutCreateMutation.graphql b/src/graphql/checkoutCreateMutation.graphql deleted file mode 100644 index 9eab19eb8..000000000 --- a/src/graphql/checkoutCreateMutation.graphql +++ /dev/null @@ -1,13 +0,0 @@ -mutation ($input: CheckoutCreateInput!) { - checkoutCreate(input: $input) { - userErrors { - ...UserErrorFragment - } - checkoutUserErrors { - ...CheckoutUserErrorFragment - } - checkout { - ...CheckoutFragment - } - } -} diff --git a/src/graphql/checkoutDiscountCodeApplyV2Mutation.graphql b/src/graphql/checkoutDiscountCodeApplyV2Mutation.graphql deleted file mode 100644 index 99db577c7..000000000 --- a/src/graphql/checkoutDiscountCodeApplyV2Mutation.graphql +++ /dev/null @@ -1,13 +0,0 @@ -mutation checkoutDiscountCodeApplyV2($discountCode: String!, $checkoutId: ID!) { - checkoutDiscountCodeApplyV2(discountCode: $discountCode, checkoutId: $checkoutId) { - userErrors { - ...UserErrorFragment - } - checkoutUserErrors { - ...CheckoutUserErrorFragment - } - checkout { - ...CheckoutFragment - } - } -} diff --git a/src/graphql/checkoutDiscountCodeRemoveMutation.graphql b/src/graphql/checkoutDiscountCodeRemoveMutation.graphql deleted file mode 100644 index bf94b228c..000000000 --- a/src/graphql/checkoutDiscountCodeRemoveMutation.graphql +++ /dev/null @@ -1,13 +0,0 @@ -mutation checkoutDiscountCodeRemove($checkoutId: ID!) { - checkoutDiscountCodeRemove(checkoutId: $checkoutId) { - userErrors { - ...UserErrorFragment - } - checkoutUserErrors { - ...CheckoutUserErrorFragment - } - checkout { - ...CheckoutFragment - } - } -} diff --git a/src/graphql/checkoutEmailUpdateV2Mutation.graphql b/src/graphql/checkoutEmailUpdateV2Mutation.graphql deleted file mode 100644 index b74b60b0b..000000000 --- a/src/graphql/checkoutEmailUpdateV2Mutation.graphql +++ /dev/null @@ -1,13 +0,0 @@ -mutation checkoutEmailUpdateV2($checkoutId: ID!, $email: String!) { - checkoutEmailUpdateV2(checkoutId: $checkoutId, email: $email) { - userErrors { - ...UserErrorFragment - } - checkoutUserErrors { - ...CheckoutUserErrorFragment - } - checkout { - ...CheckoutFragment - } - } -} diff --git a/src/graphql/checkoutGiftCardRemoveV2Mutation.graphql b/src/graphql/checkoutGiftCardRemoveV2Mutation.graphql deleted file mode 100644 index ce9c398fc..000000000 --- a/src/graphql/checkoutGiftCardRemoveV2Mutation.graphql +++ /dev/null @@ -1,13 +0,0 @@ -mutation checkoutGiftCardRemoveV2($appliedGiftCardId: ID!, $checkoutId: ID!) { - checkoutGiftCardRemoveV2(appliedGiftCardId: $appliedGiftCardId, checkoutId: $checkoutId) { - userErrors { - ...UserErrorFragment - } - checkoutUserErrors { - ...CheckoutUserErrorFragment - } - checkout { - ...CheckoutFragment - } - } -} diff --git a/src/graphql/checkoutGiftCardsAppendMutation.graphql b/src/graphql/checkoutGiftCardsAppendMutation.graphql deleted file mode 100644 index 4a816f466..000000000 --- a/src/graphql/checkoutGiftCardsAppendMutation.graphql +++ /dev/null @@ -1,13 +0,0 @@ -mutation checkoutGiftCardsAppend($giftCardCodes: [String!]!, $checkoutId: ID!) { - checkoutGiftCardsAppend(giftCardCodes: $giftCardCodes, checkoutId: $checkoutId) { - userErrors { - ...UserErrorFragment - } - checkoutUserErrors { - ...CheckoutUserErrorFragment - } - checkout { - ...CheckoutFragment - } - } -} diff --git a/src/graphql/checkoutLineItemsAddMutation.graphql b/src/graphql/checkoutLineItemsAddMutation.graphql deleted file mode 100644 index 4969b009e..000000000 --- a/src/graphql/checkoutLineItemsAddMutation.graphql +++ /dev/null @@ -1,13 +0,0 @@ -mutation ($checkoutId: ID!, $lineItems: [CheckoutLineItemInput!]!) { - checkoutLineItemsAdd(checkoutId: $checkoutId, lineItems: $lineItems) { - userErrors { - ...UserErrorFragment - } - checkoutUserErrors { - ...CheckoutUserErrorFragment - } - checkout { - ...CheckoutFragment - } - } -} diff --git a/src/graphql/checkoutLineItemsRemoveMutation.graphql b/src/graphql/checkoutLineItemsRemoveMutation.graphql deleted file mode 100644 index f7b15a22a..000000000 --- a/src/graphql/checkoutLineItemsRemoveMutation.graphql +++ /dev/null @@ -1,13 +0,0 @@ -mutation ($checkoutId: ID!, $lineItemIds: [ID!]!) { - checkoutLineItemsRemove(checkoutId: $checkoutId, lineItemIds: $lineItemIds) { - userErrors { - ...UserErrorFragment - } - checkoutUserErrors { - ...CheckoutUserErrorFragment - } - checkout { - ...CheckoutFragment - } - } -} diff --git a/src/graphql/checkoutLineItemsReplaceMutation.graphql b/src/graphql/checkoutLineItemsReplaceMutation.graphql deleted file mode 100644 index fcf8e6059..000000000 --- a/src/graphql/checkoutLineItemsReplaceMutation.graphql +++ /dev/null @@ -1,10 +0,0 @@ -mutation ($checkoutId: ID!, $lineItems: [CheckoutLineItemInput!]!) { - checkoutLineItemsReplace(checkoutId: $checkoutId, lineItems: $lineItems) { - userErrors { - ...CheckoutUserErrorFragment - } - checkout { - ...CheckoutFragment - } - } -} diff --git a/src/graphql/checkoutLineItemsUpdateMutation.graphql b/src/graphql/checkoutLineItemsUpdateMutation.graphql deleted file mode 100644 index 6f0807793..000000000 --- a/src/graphql/checkoutLineItemsUpdateMutation.graphql +++ /dev/null @@ -1,13 +0,0 @@ -mutation ($checkoutId: ID!, $lineItems: [CheckoutLineItemUpdateInput!]!) { - checkoutLineItemsUpdate(checkoutId: $checkoutId, lineItems: $lineItems) { - userErrors { - ...UserErrorFragment - } - checkoutUserErrors { - ...CheckoutUserErrorFragment - } - checkout { - ...CheckoutFragment - } - } -} diff --git a/src/graphql/checkoutNodeQuery.graphql b/src/graphql/checkoutNodeQuery.graphql deleted file mode 100644 index af81aa06e..000000000 --- a/src/graphql/checkoutNodeQuery.graphql +++ /dev/null @@ -1,5 +0,0 @@ -query ($id: ID!) { - node(id: $id) { - ...CheckoutFragment - } -} diff --git a/src/graphql/checkoutShippingAddressUpdateV2Mutation.graphql b/src/graphql/checkoutShippingAddressUpdateV2Mutation.graphql deleted file mode 100644 index a7826ad01..000000000 --- a/src/graphql/checkoutShippingAddressUpdateV2Mutation.graphql +++ /dev/null @@ -1,13 +0,0 @@ -mutation checkoutShippingAddressUpdateV2($shippingAddress: MailingAddressInput!, $checkoutId: ID!) { - checkoutShippingAddressUpdateV2(shippingAddress: $shippingAddress, checkoutId: $checkoutId) { - userErrors { - ...UserErrorFragment - } - checkoutUserErrors { - ...CheckoutUserErrorFragment - } - checkout { - ...CheckoutFragment - } - } -} diff --git a/src/handle-checkout-mutation.js b/src/handle-checkout-mutation.js deleted file mode 100644 index 5cf7086bc..000000000 --- a/src/handle-checkout-mutation.js +++ /dev/null @@ -1,30 +0,0 @@ -export default function handleCheckoutMutation(mutationRootKey, client) { - return function({data = {}, errors, model = {}}) { - const rootData = data[mutationRootKey]; - const rootModel = model[mutationRootKey]; - - if (rootData && rootData.checkout) { - return client.fetchAllPages(rootModel.checkout.lineItems, {pageSize: 250}).then((lineItems) => { - rootModel.checkout.attrs.lineItems = lineItems; - rootModel.checkout.errors = errors; - rootModel.checkout.userErrors = rootModel.userErrors; - - return rootModel.checkout; - }); - } - - if (errors && errors.length) { - return Promise.reject(new Error(JSON.stringify(errors))); - } - - if (rootData && rootData.checkoutUserErrors && rootData.checkoutUserErrors.length) { - return Promise.reject(new Error(JSON.stringify(rootData.checkoutUserErrors))); - } - - if (rootData && rootData.userErrors && rootData.userErrors.length) { - return Promise.reject(new Error(JSON.stringify(rootData.userErrors))); - } - - return Promise.reject(new Error(`The ${mutationRootKey} mutation failed due to an unknown error.`)); - }; -} diff --git a/test/client-checkout-integration-test.js b/test/client-checkout-integration-test.js deleted file mode 100644 index 54a772c6f..000000000 --- a/test/client-checkout-integration-test.js +++ /dev/null @@ -1,582 +0,0 @@ -import assert from 'assert'; -import Client from '../src/client'; -import fetchMock from './isomorphic-fetch-mock'; // eslint-disable-line import/no-unresolved -import fetchMockPostOnce from './fetch-mock-helper'; - -// fixtures -import checkoutFixture from '../fixtures/checkout-fixture'; -import checkoutNullFixture from '../fixtures/node-null-fixture'; -import checkoutCreateFixture from '../fixtures/checkout-create-fixture'; -import checkoutCreateInvalidVariantIdErrorFixture from '../fixtures/checkout-create-invalid-variant-id-error-fixture'; -import checkoutCreateWithPaginatedLineItemsFixture from '../fixtures/checkout-create-with-paginated-line-items-fixture'; -import {secondPageLineItemsFixture, thirdPageLineItemsFixture} from '../fixtures/paginated-line-items-fixture'; -import checkoutLineItemsAddFixture from '../fixtures/checkout-line-items-add-fixture'; -import checkoutLineItemsAddWithUserErrorsFixture from '../fixtures/checkout-line-items-add-with-user-errors-fixture'; -import checkoutLineItemsUpdateFixture from '../fixtures/checkout-line-items-update-fixture'; -import checkoutLineItemsUpdateWithUserErrorsFixture from '../fixtures/checkout-line-items-update-with-user-errors-fixture'; -import checkoutLineItemsRemoveFixture from '../fixtures/checkout-line-items-remove-fixture'; -import checkoutLineItemsRemoveWithUserErrorsFixture from '../fixtures/checkout-line-items-remove-with-user-errors-fixture'; -import checkoutLineItemsReplaceFixture from '../fixtures/checkout-line-items-replace-fixture'; -import checkoutLineItemsReplaceWithUserErrorsFixture from '../fixtures/checkout-line-items-replace-with-user-errors-fixture'; -import checkoutUpdateAttributesV2Fixture from '../fixtures/checkout-update-custom-attrs-fixture'; -import checkoutUpdateAttributesV2WithUserErrorsFixture from '../fixtures/checkout-update-custom-attrs-with-user-errors-fixture'; -import checkoutUpdateEmailV2Fixture from '../fixtures/checkout-update-email-fixture'; -import checkoutUpdateEmailV2WithUserErrorsFixture from '../fixtures/checkout-update-email-with-user-errors-fixture'; -import checkoutDiscountCodeApplyV2Fixture from '../fixtures/checkout-discount-code-apply-fixture'; -import checkoutDiscountCodeRemoveFixture from '../fixtures/checkout-discount-code-remove-fixture'; -import checkoutGiftCardsAppendFixture from '../fixtures/checkout-gift-cards-apply-fixture'; -import checkoutGiftCardRemoveV2Fixture from '../fixtures/checkout-gift-card-remove-fixture'; -import checkoutShippingAddressUpdateV2Fixture from '../fixtures/checkout-shipping-address-update-v2-fixture'; -import checkoutShippingAdddressUpdateV2WithUserErrorsFixture from '../fixtures/checkout-shipping-address-update-v2-with-user-errors-fixture'; - -suite('client-checkout-integration-test', () => { - const domain = 'client-integration-tests.myshopify.io'; - const config = { - storefrontAccessToken: 'abc123', - domain - }; - const shippingAddress = { - address1: 'Chestnut Street 92', - address2: 'Apartment 2', - city: 'Louisville', - company: null, - country: 'United States', - firstName: 'Bob', - lastName: 'Norman', - phone: '555-625-1199', - province: 'Kentucky', - zip: '40202' - }; - let client; - let apiUrl; - - setup(() => { - client = Client.buildClient(config); - apiUrl = `https://${domain}/api/${client.config.apiVersion}/graphql`; - fetchMock.reset(); - }); - - teardown(() => { - client = null; - fetchMock.restore(); - }); - - test('it resolves with a checkout on Client.checkout#fetch', () => { - fetchMockPostOnce(fetchMock, apiUrl, checkoutFixture); - - const checkoutId = checkoutFixture.data.node.id; - - return client.checkout.fetch(checkoutId).then((checkout) => { - assert.equal(checkout.id, checkoutId); - assert.ok(fetchMock.done()); - }); - }); - - test('it resolves with null on Client.checkout#fetch for a bad checkoutId', () => { - fetchMockPostOnce(fetchMock, apiUrl, checkoutNullFixture); - - const checkoutId = checkoutFixture.data.node.id; - - return client.checkout.fetch(checkoutId).then((checkout) => { - assert.equal(checkout, null); - assert.ok(fetchMock.done()); - }); - }); - - test('it resolves with a checkout on Client.checkout#create', () => { - const input = { - lineItems: [ - { - variantId: 'an-id', - quantity: 5 - } - ], - shippingAddress: {} - }; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutCreateFixture); - - return client.checkout.create(input).then((checkout) => { - assert.equal(checkout.id, checkoutCreateFixture.data.checkoutCreate.checkout.id); - assert.ok(fetchMock.done()); - }); - }); - - test('it resolve with user errors on Client.checkout#create when variantId is invalid', () => { - const input = { - lineItems: [ - { - variantId: 'a-bad-id', - quantity: 5 - } - ] - }; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutCreateInvalidVariantIdErrorFixture); - - return client.checkout.create(input).then(() => { - assert.ok(false, 'Promise should not resolve'); - }).catch((error) => { - assert.equal(error.message, '[{"message":"Variable input of type CheckoutCreateInput! was provided invalid value"}]'); - }); - }); - - test('it resolves with a checkout on Client.checkout#updateAttributes', () => { - const checkoutId = 'Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE='; - const input = { - lineItems: [ - {variantId: 'an-id', quantity: 5} - ], - customAttributes: [ - {key: 'MyKey', value: 'MyValue'} - ] - }; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutUpdateAttributesV2Fixture); - - return client.checkout.updateAttributes(checkoutId, input).then((checkout) => { - assert.equal(checkout.id, checkoutUpdateAttributesV2Fixture.data.checkoutAttributesUpdateV2.checkout.id); - assert.equal(checkout.customAttributes[0].key, checkoutUpdateAttributesV2Fixture.data.checkoutAttributesUpdateV2.checkout.customAttributes[0].key); - assert.equal(checkout.customAttributes[0].value, checkoutUpdateAttributesV2Fixture.data.checkoutAttributesUpdateV2.checkout.customAttributes[0].value); - assert.ok(fetchMock.done()); - }); - }); - - test('it resolves with user errors on Client.checkout#updateAttributes when input is invalid', () => { - const checkoutId = checkoutUpdateAttributesV2Fixture.data.checkoutAttributesUpdateV2.checkout.id; - const input = { - note: 'Very long note' - }; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutUpdateAttributesV2WithUserErrorsFixture); - - return client.checkout.updateAttributes(checkoutId, input).then(() => { - assert.ok(false, 'Promise should not resolve'); - }).catch((error) => { - assert.equal(error.message, '[{"message":"Note is too long (maximum is 5000 characters)","field":["input","note"],"code":"TOO_LONG"}]'); - }); - }); - - test('it resolves with a checkout on Client.checkout#updateEmail', () => { - const checkoutId = 'Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE='; - const input = { - email: 'user@example.com' - }; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutUpdateEmailV2Fixture); - - return client.checkout.updateEmail(checkoutId, input).then((checkout) => { - assert.equal(checkout.id, checkoutUpdateEmailV2Fixture.data.checkoutEmailUpdateV2.checkout.id); - assert.equal(checkout.email, checkoutUpdateEmailV2Fixture.data.checkoutEmailUpdateV2.checkout.email); - assert.ok(fetchMock.done()); - }); - }); - - test('it resolve with user errors on Client.checkout#updateEmail when email is invalid', () => { - const checkoutId = checkoutUpdateEmailV2Fixture.data.checkoutEmailUpdateV2.checkout.id; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutUpdateEmailV2WithUserErrorsFixture); - - return client.checkout.updateEmail(checkoutId, {email: 'invalid-email'}).then(() => { - assert.ok(false, 'Promise should not resolve'); - }).catch((error) => { - assert.equal(error.message, '[{"message":"Email is invalid","field":["email"],"code":"INVALID"}]'); - }); - }); - - test('it resolves with a checkout on Client.checkout#addLineItems', () => { - const checkoutId = checkoutLineItemsAddFixture.data.checkoutLineItemsAdd.checkout.id; - const lineItems = [ - {variantId: 'id1', quantity: 5}, - {variantId: 'id2', quantity: 2} - ]; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutLineItemsAddFixture); - - return client.checkout.addLineItems(checkoutId, lineItems).then((checkout) => { - assert.equal(checkout.id, checkoutId); - assert.ok(fetchMock.done()); - }); - }); - - test('it resolve with user errors on Client.checkout#addLineItems when variant is invalid', () => { - const checkoutId = checkoutLineItemsAddFixture.data.checkoutLineItemsAdd.checkout.id; - const lineItems = [ - {variantId: '', quantity: 1} - ]; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutLineItemsAddWithUserErrorsFixture); - - return client.checkout.addLineItems(checkoutId, lineItems).then(() => { - assert.ok(false, 'Promise should not resolve'); - }).catch((error) => { - assert.equal(error.message, '[{"message":"Variant is invalid","field":["lineItems","0","variantId"],"code":"INVALID"}]'); - }); - }); - - test('it resolves with a checkout on Client.checkout#replaceLineItems', () => { - const checkoutId = checkoutLineItemsReplaceFixture.data.checkoutLineItemsReplace.checkout.id; - const lineItems = [ - {variantId: 'id1', quantity: 5}, - {variantId: 'id2', quantity: 2} - ]; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutLineItemsReplaceFixture); - - return client.checkout.replaceLineItems(checkoutId, lineItems).then((checkout) => { - assert.equal(checkout.id, checkoutId); - assert.ok(fetchMock.done()); - }); - }); - - test('it resolve with user errors on Client.checkout#replaceLineItems when variant is invalid', () => { - const checkoutId = checkoutLineItemsReplaceFixture.data.checkoutLineItemsReplace.checkout.id; - const lineItems = [ - {variantId: '', quantity: 1} - ]; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutLineItemsReplaceWithUserErrorsFixture); - - return client.checkout.replaceLineItems(checkoutId, lineItems).then(() => { - assert.ok(false, 'Promise should not resolve'); - }).catch((error) => { - assert.equal(error.message, '[{"message":"Variant is invalid","field":["lineItems","0","variantId"],"code":"INVALID"}]'); - }); - }); - - test('it resolves with a checkout on Client.checkout#updateLineItems', () => { - const checkoutId = checkoutLineItemsUpdateFixture.data.checkoutLineItemsUpdate.checkout.id; - const lineItems = [ - { - id: 'gid://shopify/CheckoutLineItem/194677729198640?checkout=e3bd71f7248c806f33725a53e33931ef', - quantity: 2, - variantId: 'variant-id' - } - ]; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutLineItemsUpdateFixture); - - return client.checkout.updateLineItems(checkoutId, lineItems).then((checkout) => { - assert.equal(checkout.id, checkoutId); - assert.ok(fetchMock.done()); - }); - }); - - test('it resolves with user errors on Client.checkout#updateLineItems when variant is invalid', () => { - const checkoutId = checkoutLineItemsUpdateFixture.data.checkoutLineItemsUpdate.checkout.id; - const lineItems = [ - { - id: 'id1', - quantity: 2, - variantId: '' - } - ]; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutLineItemsUpdateWithUserErrorsFixture); - - return client.checkout.updateLineItems(checkoutId, lineItems).then(() => { - assert.ok(false, 'Promise should not resolve'); - }).catch((error) => { - assert.equal(error.message, '[{"message":"Variant is invalid","field":["lineItems","0","variantId"],"code":"INVALID"}]'); - }); - }); - - test('it resolves with a checkout on Client.checkout#removeLineItems', () => { - const checkoutId = checkoutLineItemsRemoveFixture.data.checkoutLineItemsRemove.checkout.id; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutLineItemsRemoveFixture); - - return client.checkout.removeLineItems(checkoutId, ['line-item-id']).then((checkout) => { - assert.equal(checkout.id, checkoutId); - assert.ok(fetchMock.done()); - }); - }); - - test('it resolves with user errors on Client.checkout#removeLineItems when line item is invalid', () => { - const checkoutId = checkoutLineItemsRemoveFixture.data.checkoutLineItemsRemove.checkout.id; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutLineItemsRemoveWithUserErrorsFixture); - - return client.checkout.removeLineItems(checkoutId, ['invalid-line-item-id']).then(() => { - assert.ok(false, 'Promise should not resolve'); - }).catch((error) => { - assert.equal(error.message, '[{"message":"Line item with id abcdefgh not found","field":null,"code":"LINE_ITEM_NOT_FOUND"}]'); - }); - }); - - test('it resolves with a checkout on Client.checkout#addDiscount', () => { - const checkoutId = checkoutDiscountCodeApplyV2Fixture.data.checkoutDiscountCodeApplyV2.checkout.id; - const discountCode = 'TENPERCENTOFF'; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutDiscountCodeApplyV2Fixture); - - return client.checkout.addDiscount(checkoutId, discountCode).then((checkout) => { - assert.equal(checkout.id, checkoutId); - assert.ok(fetchMock.done()); - }); - }); - - test('it resolves with checkoutUserErrors on Client.checkout#addDiscount with an invalid code', () => { - const checkoutDiscountCodeApplyV2WithCheckoutUserErrorsFixture = { - data: { - checkoutDiscountCodeApplyV2: { - checkoutUserErrors: [ - { - message: 'Discount code Unable to find a valid discount matching the code entered', - field: ['discountCode'], - code: 'DISCOUNT_NOT_FOUND' - } - ], - userErrors: [ - { - message: 'Discount code Unable to find a valid discount matching the code entered', - field: ['discountCode'] - } - ], - checkout: null - } - } - }; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutDiscountCodeApplyV2WithCheckoutUserErrorsFixture); - - const checkoutId = checkoutDiscountCodeApplyV2Fixture.data.checkoutDiscountCodeApplyV2.checkout.id; - const discountCode = 'INVALIDCODE'; - - return client.checkout.addDiscount(checkoutId, discountCode).then(() => { - assert.ok(false, 'Promise should not resolve'); - }).catch((error) => { - assert.equal(error.message, '[{"message":"Discount code Unable to find a valid discount matching the code entered","field":["discountCode"],"code":"DISCOUNT_NOT_FOUND"}]'); - }); - }); - - test('it resolves with a checkout on Client.checkout#removeDiscount', () => { - const checkoutId = checkoutDiscountCodeRemoveFixture.data.checkoutDiscountCodeRemove.checkout.id; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutDiscountCodeRemoveFixture); - - return client.checkout.removeDiscount(checkoutId).then((checkout) => { - assert.equal(checkout.id, checkoutId); - assert.ok(fetchMock.done()); - }); - }); - - test('it resolves with a checkout on Client.checkout#addGiftCards', () => { - const checkoutId = checkoutGiftCardsAppendFixture.data.checkoutGiftCardsAppend.checkout.id; - const giftCardCodes = ['H8HA 6H9F HBA8 F2FC', '6FD8 835D AAGA 949F']; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutGiftCardsAppendFixture); - - return client.checkout.addGiftCards(checkoutId, giftCardCodes).then((checkout) => { - assert.equal(checkout.id, checkoutId); - assert.ok(fetchMock.done()); - }); - }); - - test('it resolves with checkoutUserErrors on Client.checkout#addGiftCards with an invalid code', () => { - const checkoutGiftCardsApppendWithCheckoutUserErrorsFixture = { - data: { - checkoutGiftCardsAppend: { - checkoutUserErrors: [ - { - message: 'Code is invalid', - field: ['giftCardCodes', '0'], - code: 'GIFT_CARD_CODE_INVALID' - } - ], - userErrors: [ - { - message: 'Code is invalid', - field: ['giftCardCodes', '0'] - } - ], - checkout: null - } - } - }; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutGiftCardsApppendWithCheckoutUserErrorsFixture); - - const checkoutId = checkoutGiftCardsAppendFixture.data.checkoutGiftCardsAppend.checkout.id; - const giftCardCode = 'INVALIDCODE'; - - return client.checkout.addGiftCards(checkoutId, [giftCardCode]).then(() => { - assert.ok(false, 'Promise should not resolve'); - }).catch((error) => { - assert.equal(error.message, '[{"message":"Code is invalid","field":["giftCardCodes","0"],"code":"GIFT_CARD_CODE_INVALID"}]'); - }); - }); - - test('it resolves with a checkout on Client.checkout#removeGiftCard', () => { - const checkoutId = checkoutGiftCardRemoveV2Fixture.data.checkoutGiftCardRemoveV2.checkout.id; - const appliedGiftCardId = 'Z2lkOi8vc2hvcGlmeS9BcHBsaWVkR2lmdENhcmQvNDI4NTQ1ODAzMTI='; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutGiftCardRemoveV2Fixture); - - return client.checkout.removeGiftCard(checkoutId, appliedGiftCardId).then((checkout) => { - assert.equal(checkout.id, checkoutId); - assert.ok(fetchMock.done()); - }); - }); - - test('it resolves with checkoutUserErrors on Client.checkout#removeGiftCard with a code not present', () => { - const checkoutGiftCardsRemoveV2WithCheckoutUserErrorsFixture = { - data: { - checkoutGiftCardRemoveV2: { - checkoutUserErrors: [ - { - message: 'Applied Gift Card not found', - field: null, - code: 'GIFT_CARD_NOT_FOUND' - } - ], - userErrors: [ - { - message: 'Applied Gift Card not found', - field: null - } - ], - checkout: null - } - } - }; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutGiftCardsRemoveV2WithCheckoutUserErrorsFixture); - - const checkoutId = checkoutGiftCardRemoveV2Fixture.data.checkoutGiftCardRemoveV2.checkout.id; - const appliedGiftCardId = 'Z2lkOi8vc2hvcGlmeS9BcHBsaWVkR2lmdENhcmQvNDI4NTQ1ODAzMTI='; - - return client.checkout.removeGiftCard(checkoutId, appliedGiftCardId).then(() => { - assert.ok(false, 'Promise should not resolve'); - }).catch((error) => { - assert.equal(error.message, '[{"message":"Applied Gift Card not found","field":null,"code":"GIFT_CARD_NOT_FOUND"}]'); - }); - }); - - test('it resolves with a checkout on Client.checkout#updateShippingAddress', () => { - const {id: checkoutId} = checkoutShippingAddressUpdateV2Fixture.data.checkoutShippingAddressUpdateV2.checkout; - const { - name: shippingName, - provinceCode: shippingProvince, - countryCode: shippingCountry - } = checkoutShippingAddressUpdateV2Fixture.data.checkoutShippingAddressUpdateV2.checkout.shippingAddress; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutShippingAddressUpdateV2Fixture); - - return client.checkout.updateShippingAddress(checkoutId, shippingAddress).then((checkout) => { - assert.equal(checkout.id, checkoutId); - assert.equal(checkout.shippingAddress.name, shippingName); - assert.equal(checkout.shippingAddress.provinceCode, shippingProvince); - assert.equal(checkout.shippingAddress.countryCode, shippingCountry); - assert.ok(fetchMock.done()); - }); - }); - - test('it resolves with user errors on Client.checkout#updateShippingAddress with invalid address', () => { - const checkoutId = checkoutShippingAddressUpdateV2Fixture.data.checkoutShippingAddressUpdateV2.checkout.id; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutShippingAdddressUpdateV2WithUserErrorsFixture); - - return client.checkout.updateShippingAddress(checkoutId, shippingAddress).then(() => { - assert.ok(false, 'Promise should not resolve.'); - }).catch((error) => { - assert.equal(error.message, '[{"message":"Country is not supported","field":["shippingAddress","country"],"code":"NOT_SUPPORTED"}]'); - }); - }); - - test('it fetches all paginated line items on the checkout on any checkout mutation', () => { - const input = { - lineItems: [ - {variantId: 'id1', quantity: 5}, - {variantId: 'id2', quantity: 10}, - {variantId: 'id3', quantity: 15} - ] - }; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutCreateWithPaginatedLineItemsFixture); - fetchMockPostOnce(fetchMock, apiUrl, secondPageLineItemsFixture); - fetchMockPostOnce(fetchMock, apiUrl, thirdPageLineItemsFixture); - - return client.checkout.create(input).then(() => { - assert.ok(fetchMock.done()); - }); - }); - - test('it rejects checkout mutations that return with a non-null `userErrors` field', () => { - const checkoutCreateWithUserErrorsFixture = { - data: { - checkoutCreate: { - userErrors: [ - { - message: 'Variant is invalid', - field: [ - 'lineItems', - '0', - 'variantId' - ] - } - ], - checkout: null - } - } - }; - - const input = { - lineItems: [ - {variantId: 'invalidId', quantity: 5} - ] - }; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutCreateWithUserErrorsFixture); - - return client.checkout.create(input).then(() => { - assert.ok(false, 'Promise should not resolve'); - }).catch((error) => { - assert.equal(error.message, '[{"message":"Variant is invalid","field":["lineItems","0","variantId"]}]'); - }); - }); - - test('it rejects checkout mutations that return with a non-null `errors` without data field', () => { - const checkoutCreateWithUserErrorsFixture = { - data: {}, - errors: [{message: 'Timeout'}] - }; - - const input = { - lineItems: [ - {variantId: 'invalidId', quantity: 5} - ] - }; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutCreateWithUserErrorsFixture); - - return client.checkout.create(input).then(() => { - assert.ok(false, 'Promise should not resolve'); - }).catch((error) => { - assert.equal(error.message, '[{"message":"Timeout"}]'); - }); - }); - - test('it resolves checkout mutations that return with a non-null `errors` with data field', () => { - checkoutCreateWithPaginatedLineItemsFixture.errors = [{message: 'Some error'}]; - - const input = { - lineItems: [ - {variantId: 'id1', quantity: 5}, - {variantId: 'id2', quantity: 10}, - {variantId: 'id3', quantity: 15} - ] - }; - - fetchMockPostOnce(fetchMock, apiUrl, checkoutCreateWithPaginatedLineItemsFixture); - fetchMockPostOnce(fetchMock, apiUrl, secondPageLineItemsFixture); - fetchMockPostOnce(fetchMock, apiUrl, thirdPageLineItemsFixture); - - return client.checkout.create(input).then((checkout) => { - assert.ok(checkout.errors); - assert.ok(fetchMock.done()); - }).catch(() => { - assert.equal(false, 'Should resolve'); - }); - }); -}); From f58c41fdc1f02b1f9e0ffa7e835f28c4b4a00fb1 Mon Sep 17 00:00:00 2001 From: Scott Dixon Date: Fri, 4 Oct 2024 17:12:50 +1000 Subject: [PATCH 18/19] cart.updateGiftCardCodes and fix cart.buyerIdentify.preferences --- README.md | 11 +++ fixtures/cart-line-items-add-fixture.js | 2 +- fixtures/cart-line-items-remove-fixture.js | 2 +- fixtures/cart-line-items-update-fixture.js | 2 +- fixtures/cart-update-attrs-fixture.js | 2 +- .../cart-update-buyer-identity-fixture.js | 2 +- .../cart-update-discount-codes-fixture.js | 2 +- .../cart-update-gift-card-codes-fixture.js | 99 +++++++++++++++++++ fixtures/cart-update-note-fixture.js | 2 +- ...pdate-selected-delivery-options-fixture.js | 2 +- src/cart-resource.js | 23 +++++ src/client.js | 3 - src/graphql/CartFragment.graphql | 28 +++++- .../cartGiftCardCodesUpdateMutation.graphql | 12 +++ test/client-cart-integration-test.js | 13 +++ 15 files changed, 193 insertions(+), 12 deletions(-) create mode 100644 fixtures/cart-update-gift-card-codes-fixture.js create mode 100644 src/graphql/cartGiftCardCodesUpdateMutation.graphql diff --git a/README.md b/README.md index f520e5b87..037a4d710 100644 --- a/README.md +++ b/README.md @@ -33,6 +33,7 @@ Each version of the JS Buy SDK uses a specific Storefront API version and the su - [Updating Cart Attributes](#updating-cart-attributes) - [Updating Buyer Identity](#updating-buyer-identity) - [Updating Discount Codes](#updating-discount-codes) + - [Updating Gift Card Codes](#updating-gift-card-codes) - [Adding Cart Line Items](#adding-cart-line-items) - [Removing Cart Line Items](#removing-cart-line-items) - [Updating Cart Line Items](#updating-cart-line-items) @@ -244,6 +245,16 @@ client.cart.updateDiscountCodes(cartId, discountCodes).then((cart) => { }); ``` +### Updating Gift Card Codes + +```javascript +const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; +const giftCardCodes = ["jmfxf9wmmmhgq379"]; + +client.cart.updateGiftCardCodes(cartId, giftCardCodes).then((cart) => { + // Do something with the updated cart +}); + ### Adding Cart Line Items ```javascript diff --git a/fixtures/cart-line-items-add-fixture.js b/fixtures/cart-line-items-add-fixture.js index 3ca31f6aa..214ec25af 100644 --- a/fixtures/cart-line-items-add-fixture.js +++ b/fixtures/cart-line-items-add-fixture.js @@ -61,7 +61,7 @@ export default { discountCodes: [], buyerIdentity: { countryCode: null, - walletPreferences: [], + preferences: [], email: null, phone: null, customer: null diff --git a/fixtures/cart-line-items-remove-fixture.js b/fixtures/cart-line-items-remove-fixture.js index 92cc4fedf..93aef1abd 100644 --- a/fixtures/cart-line-items-remove-fixture.js +++ b/fixtures/cart-line-items-remove-fixture.js @@ -29,7 +29,7 @@ export default { discountCodes: [], buyerIdentity: { countryCode: null, - walletPreferences: [], + preferences: [], email: null, phone: null, customer: null diff --git a/fixtures/cart-line-items-update-fixture.js b/fixtures/cart-line-items-update-fixture.js index dbd16b36f..212da0d6f 100644 --- a/fixtures/cart-line-items-update-fixture.js +++ b/fixtures/cart-line-items-update-fixture.js @@ -61,7 +61,7 @@ export default { discountCodes: [], buyerIdentity: { countryCode: null, - walletPreferences: [], + preferences: [], email: null, phone: null, customer: null diff --git a/fixtures/cart-update-attrs-fixture.js b/fixtures/cart-update-attrs-fixture.js index cdad1cc07..5487acf87 100644 --- a/fixtures/cart-update-attrs-fixture.js +++ b/fixtures/cart-update-attrs-fixture.js @@ -47,7 +47,7 @@ export default { discountCodes: [], buyerIdentity: { countryCode: null, - walletPreferences: [], + preferences: [], email: null, phone: null, customer: null diff --git a/fixtures/cart-update-buyer-identity-fixture.js b/fixtures/cart-update-buyer-identity-fixture.js index ab22547c7..b4506ed3d 100644 --- a/fixtures/cart-update-buyer-identity-fixture.js +++ b/fixtures/cart-update-buyer-identity-fixture.js @@ -61,7 +61,7 @@ export default { discountCodes: [], buyerIdentity: { countryCode: null, - walletPreferences: [], + preferences: [], email: 'hi@hello.com', phone: null, customer: null, diff --git a/fixtures/cart-update-discount-codes-fixture.js b/fixtures/cart-update-discount-codes-fixture.js index 612a35fda..9b5615aaa 100644 --- a/fixtures/cart-update-discount-codes-fixture.js +++ b/fixtures/cart-update-discount-codes-fixture.js @@ -66,7 +66,7 @@ export default { ], buyerIdentity: { countryCode: null, - walletPreferences: [], + preferences: [], email: null, phone: null, customer: null, diff --git a/fixtures/cart-update-gift-card-codes-fixture.js b/fixtures/cart-update-gift-card-codes-fixture.js new file mode 100644 index 000000000..f4d0b710f --- /dev/null +++ b/fixtures/cart-update-gift-card-codes-fixture.js @@ -0,0 +1,99 @@ +export default { + data: { + cartGiftCardCodesUpdate: { + cart: { + id: 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSFA2NDFLNUM0NVNZRTU4QVA3V0dQRkRE', + createdAt: '2024-02-09T05:04:33Z', + updatedAt: '2024-02-09T05:04:34Z', + lines: { + pageInfo: { + hasNextPage: false, + hasPreviousPage: false + }, + edges: [ + { + node: { + __typename: 'CartLine', + id: 'gid://shopify/CartLine/707fa759-932e-4649-b5bb-a4a1c5b1dc22?cart=Z2NwLXVzLWVhc3QxOjAxSFA2NDFLNUM0NVNZRTU4QVA3V0dQRkRE', + merchandise: { + id: 'gid://shopify/ProductVariant/13666012889144' + }, + quantity: 1, + attributes: [], + cost: { + totalAmount: { + amount: '5.15', + currencyCode: 'AUD' + }, + subtotalAmount: { + amount: '5.15', + currencyCode: 'AUD' + }, + amountPerQuantity: { + amount: '5.15', + currencyCode: 'AUD' + }, + compareAtAmountPerQuantity: null + }, + discountAllocations: [], + sellingPlanAllocation: null + } + } + ] + }, + attributes: [], + cost: { + totalAmount: { + amount: '5.09', + currencyCode: 'AUD' + }, + subtotalAmount: { + amount: '5.15', + currencyCode: 'AUD' + }, + totalTaxAmount: { + amount: '0.46', + currencyCode: 'AUD' + }, + totalDutyAmount: null + }, + checkoutUrl: 'https://myshopify.com/cart/c/Z2NwLXVzLWVhc3QxOjAxSFA2NDFLNUM0NVNZRTU4QVA3V0dQRkRE?key=c546cc21e716cf73d7ef910123b71a1c', + discountCodes: [], + buyerIdentity: { + countryCode: null, + preferences: [], + email: null, + phone: null, + customer: null, + deliveryAddressPreferences: [] + }, + deliveryGroups: { + pageInfo: { + hasNextPage: false, + hasPreviousPage: false + }, + edges: [] + }, + note: 'This is a note!', + appliedGiftCards: [ + { + id: 'gid://shopify/AppliedGiftCard/a62ffb64-7ae6-4179-a4b8-f3aaa84ae433', + amountUsed: { + amount: '5.09', + currencyCode: 'AUD' + }, + balance: { + amount: '4.91' + }, + lastCharacters: 'q379', + presentmentAmountUsed: { + amount: '5.09', + currencyCode: 'AUD' + } + } + ] + }, + userErrors: [] + } + } +} diff --git a/fixtures/cart-update-note-fixture.js b/fixtures/cart-update-note-fixture.js index b75e7dddb..aa8832cfb 100644 --- a/fixtures/cart-update-note-fixture.js +++ b/fixtures/cart-update-note-fixture.js @@ -61,7 +61,7 @@ export default { discountCodes: [], buyerIdentity: { countryCode: null, - walletPreferences: [], + preferences: [], email: null, phone: null, customer: null, diff --git a/fixtures/cart-update-selected-delivery-options-fixture.js b/fixtures/cart-update-selected-delivery-options-fixture.js index 40cff57dd..6734b3d65 100644 --- a/fixtures/cart-update-selected-delivery-options-fixture.js +++ b/fixtures/cart-update-selected-delivery-options-fixture.js @@ -61,7 +61,7 @@ export default { discountCodes: [], buyerIdentity: { countryCode: null, - walletPreferences: [], + preferences: [], email: null, phone: null, customer: null, diff --git a/src/cart-resource.js b/src/cart-resource.js index 854c131a7..22b1637ed 100644 --- a/src/cart-resource.js +++ b/src/cart-resource.js @@ -8,6 +8,7 @@ import cartCreateMutation from './graphql/cartCreateMutation.graphql'; import cartAttributesUpdateMutation from './graphql/cartAttributesUpdateMutation.graphql'; import cartBuyerIdentityUpdateMutation from './graphql/cartBuyerIdentityUpdateMutation.graphql'; import cartDiscountCodesUpdateMutation from './graphql/cartDiscountCodesUpdateMutation.graphql'; +import cartGiftCardCodesUpdateMutation from './graphql/cartGiftCardCodesUpdateMutation.graphql'; import cartLinesAddMutation from './graphql/cartLinesAddMutation.graphql'; import cartLinesRemoveMutation from './graphql/cartLinesRemoveMutation.graphql'; import cartLinesUpdateMutation from './graphql/cartLinesUpdateMutation.graphql'; @@ -138,6 +139,28 @@ class CartResource extends Resource { .then(handleCartMutation('cartDiscountCodesUpdate', this.graphQLClient)); } + /** + * Replaces the value of a cart's gift card codes + * + * @example + * const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; + * const giftCardCodes = ['jmfxf9wmmmhgq379']; + * + * client.cart.updateGiftCardCodes(cartId, giftCardCodes).then((cart) => { + * // Do something with the updated cart + * }); + + * @param {String} cartId The ID of the cart to update. + * @param {String[]} [giftCardCodes] The case-insensitive gift card codes. + * @return {Promise|GraphModel} A promise resolving with the updated cart. + * */ + updateGiftCardCodes(cartId, giftCardCodes = []) { + return this.graphQLClient + .send(cartGiftCardCodesUpdateMutation, {cartId, giftCardCodes}) + .then(handleCartMutation('cartGiftCardCodesUpdate', this.graphQLClient)); + } + + /** * Adds line items to a cart * diff --git a/src/client.js b/src/client.js index 47780b969..1bdbf2c3c 100644 --- a/src/client.js +++ b/src/client.js @@ -3,7 +3,6 @@ import Config from './config'; import ProductResource from './product-resource'; import CollectionResource from './collection-resource'; import ShopResource from './shop-resource'; -import CheckoutResource from './checkout-resource'; import CartResource from './cart-resource'; import ImageResource from './image-resource'; import {version} from '../package.json'; @@ -18,7 +17,6 @@ import types from '../schema.json'; * @property {ProductResource} product The property under which product fetching methods live. * @property {CollectionResource} collection The property under which collection fetching methods live. * @property {ShopResource} shop The property under which shop fetching methods live. - * @property {CheckoutResource} checkout The property under which shop fetching and mutating methods live. * @property {CartResource} cart The property under which shop fetching and mutating methods live. * @property {ImageResource} image The property under which image helper methods live. */ @@ -81,7 +79,6 @@ class Client { this.product = new ProductResource(this.graphQLClient); this.collection = new CollectionResource(this.graphQLClient); this.shop = new ShopResource(this.graphQLClient); - this.checkout = new CheckoutResource(this.graphQLClient); this.cart = new CartResource(this.graphQLClient); this.image = new ImageResource(this.graphQLClient); } diff --git a/src/graphql/CartFragment.graphql b/src/graphql/CartFragment.graphql index 8b4e54d5a..2246bb52b 100644 --- a/src/graphql/CartFragment.graphql +++ b/src/graphql/CartFragment.graphql @@ -42,7 +42,18 @@ fragment CartFragment on Cart { } buyerIdentity { countryCode - walletPreferences + preferences { + delivery { + coordinates { + latitude + longitude + countryCode + } + deliveryMethod + pickupHandle + } + wallet + } email phone customer { @@ -131,5 +142,20 @@ fragment CartFragment on Cart { } } } + appliedGiftCards { + id + amountUsed { + amount + currencyCode + } + balance { + amount + } + lastCharacters + presentmentAmountUsed { + amount + currencyCode + } + } note } diff --git a/src/graphql/cartGiftCardCodesUpdateMutation.graphql b/src/graphql/cartGiftCardCodesUpdateMutation.graphql new file mode 100644 index 000000000..afea541be --- /dev/null +++ b/src/graphql/cartGiftCardCodesUpdateMutation.graphql @@ -0,0 +1,12 @@ +mutation cartGiftCardCodesUpdate($cartId: ID!, $giftCardCodes: [String!]!) { + cartGiftCardCodesUpdate(cartId: $cartId, giftCardCodes: $giftCardCodes) { + cart { + ...CartFragment + } + userErrors { + field + message + code + } + } +} diff --git a/test/client-cart-integration-test.js b/test/client-cart-integration-test.js index 7033397aa..ad113327f 100644 --- a/test/client-cart-integration-test.js +++ b/test/client-cart-integration-test.js @@ -19,6 +19,7 @@ import cartLineItemsRemoveFixture from '../fixtures/cart-line-items-remove-fixtu import cartUpdateDiscountCodesFixture from '../fixtures/cart-update-discount-codes-fixture'; import cartUpdateNoteFixture from '../fixtures/cart-update-note-fixture'; import cartUpdateSelectedDeliveryOptionsFixture from '../fixtures/cart-update-selected-delivery-options-fixture'; +import cartUpdateGiftCardCodesFixture from '../fixtures/cart-update-gift-card-codes-fixture'; suite('client-cart-integration-test', () => { const domain = 'client-integration-tests.myshopify.io'; @@ -242,6 +243,18 @@ suite('client-cart-integration-test', () => { }); }); + test('it resolves with a cart on Client.cart#updateGiftCardCodes', () => { + const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; + const giftCardCodes = ['jmfxf9wmmmhgq379']; + + fetchMockPostOnce(fetchMock, apiUrl, cartUpdateGiftCardCodesFixture); + + return client.cart.updateGiftCardCodes(cartId, giftCardCodes).then((cart) => { + assert.equal(cart.id, cartUpdateGiftCardCodesFixture.data.cartGiftCardCodesUpdate.cart.id); + assert.ok(fetchMock.done()); + }); + }); + test('it resolves with a cart on Client.cart#updateNote', () => { const cartId = 'gid://shopify/Cart/Z2NwLXVzLWVhc3QxOjAxSE5WWTAyVjlETjFDNVowVFZEWVMwMVJR'; const note = 'This is a note!'; From 10d355209072494b44df63b4704a4d591ea418bf Mon Sep 17 00:00:00 2001 From: Scott Dixon Date: Fri, 4 Oct 2024 17:14:57 +1000 Subject: [PATCH 19/19] Fetch more product variant fields --- src/graphql/CartLineFragment.graphql | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/src/graphql/CartLineFragment.graphql b/src/graphql/CartLineFragment.graphql index 8e5ed5fa8..1f6bbf6a3 100644 --- a/src/graphql/CartLineFragment.graphql +++ b/src/graphql/CartLineFragment.graphql @@ -3,6 +3,33 @@ fragment CartLineFragment on CartLine { merchandise { ... on ProductVariant { id + title + image { + id + src: url + altText + width + height + } + product { + id + handle + title + } + weight + available: availableForSale + sku + selectedOptions { + name + value + } + unitPriceMeasurement { + measuredType + quantityUnit + quantityValue + referenceUnit + referenceValue + } } } quantity