{"version":3,"file":"11100001-f76b4b94f7319291e742.js","mappings":"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","sources":["webpack://gatsby-starter-shopify/./node_modules/shopify-buy/index.js"],"sourcesContent":["/*\n@license\nThe MIT License (MIT)\n\nCopyright (c) 2016 Shopify Inc.\n\nPermission is hereby granted, free of charge, to any person obtaining a\ncopy of this software and associated documentation files (the\n\"Software\"), to deal in the Software without restriction, including\nwithout limitation the rights to use, copy, modify, merge, publish,\ndistribute, sublicense, and/or sell copies of the Software, and to\npermit persons to whom the Software is furnished to do so, subject to\nthe following conditions:\n\nThe above copyright notice and this permission notice shall be included\nin all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\nOR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\nIN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\nCLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\nTORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\nSOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n*/\n\n'use strict';\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n return typeof obj;\n} : function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n};\n\n\n\n\n\n\n\n\n\n\n\nvar classCallCheck$1 = function (instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\nvar createClass$1 = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\n\n\n\n\n\n\n\n\nvar inherits$1 = function (subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n};\n\n\n\n\n\n\n\n\n\n\n\nvar possibleConstructorReturn$1 = function (self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n};\n\n/*\nThe MIT License (MIT)\nCopyright (c) 2016 Shopify Inc.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\nIN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\nDAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\nOTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE\nOR OTHER DEALINGS IN THE SOFTWARE.\n\n\n*/\nfunction join() {\n for (var _len = arguments.length, fields = Array(_len), _key = 0; _key < _len; _key++) {\n fields[_key] = arguments[_key];\n }\n\n return fields.join(' ');\n}\n\nfunction isObject(value) {\n return Boolean(value) && Object.prototype.toString.call(value.valueOf()) === '[object Object]';\n}\n\nfunction deepFreezeCopyExcept(predicate, structure) {\n if (predicate(structure)) {\n return structure;\n } else if (isObject(structure)) {\n return Object.freeze(Object.keys(structure).reduce(function (copy, key) {\n copy[key] = deepFreezeCopyExcept(predicate, structure[key]);\n\n return copy;\n }, {}));\n } else if (Array.isArray(structure)) {\n return Object.freeze(structure.map(function (item) {\n return deepFreezeCopyExcept(predicate, item);\n }));\n } else {\n return structure;\n }\n}\n\nfunction schemaForType(typeBundle, typeName) {\n var typeSchema = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n\n var type = typeBundle.types[typeName];\n\n if (type) {\n return type;\n } else if (typeSchema && typeSchema.kind === 'INTERFACE') {\n return typeSchema;\n }\n\n throw new Error('No type of ' + typeName + ' found in schema');\n}\n\nvar classCallCheck = function classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\nvar createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\nvar inherits = function inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + (typeof superClass === 'undefined' ? 'undefined' : _typeof(superClass)));\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n};\n\nvar possibleConstructorReturn = function possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && ((typeof call === 'undefined' ? 'undefined' : _typeof(call)) === \"object\" || typeof call === \"function\") ? call : self;\n};\n\nvar slicedToArray = function () {\n function sliceIterator(arr, i) {\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"]) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n }\n\n return function (arr, i) {\n if (Array.isArray(arr)) {\n return arr;\n } else if (Symbol.iterator in Object(arr)) {\n return sliceIterator(arr, i);\n } else {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance\");\n }\n };\n}();\n\nvar toConsumableArray = function toConsumableArray(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {\n arr2[i] = arr[i];\n }return arr2;\n } else {\n return Array.from(arr);\n }\n};\n\nvar VariableDefinition = function () {\n\n /**\n * This constructor should not be invoked directly.\n * Use the factory function {@link Client#variable} to create a VariableDefinition.\n *\n * @param {String} name The name of the variable.\n * @param {String} type The GraphQL type of the variable.\n * @param {*} [defaultValue] The default value of the variable.\n */\n function VariableDefinition(name, type, defaultValue) {\n classCallCheck(this, VariableDefinition);\n\n this.name = name;\n this.type = type;\n this.defaultValue = defaultValue;\n Object.freeze(this);\n }\n\n /**\n * Returns the GraphQL query string for the variable as an input value (e.g. `$variableName`).\n *\n * @return {String} The GraphQL query string for the variable as an input value.\n */\n\n createClass(VariableDefinition, [{\n key: 'toInputValueString',\n value: function toInputValueString() {\n return '$' + this.name;\n }\n\n /**\n * Returns the GraphQL query string for the variable (e.g. `$variableName:VariableType = defaultValue`).\n *\n * @return {String} The GraphQL query string for the variable.\n */\n\n }, {\n key: 'toString',\n value: function toString() {\n var defaultValueString = this.defaultValue ? ' = ' + formatInputValue(this.defaultValue) : '';\n\n return '$' + this.name + ':' + this.type + defaultValueString;\n }\n }]);\n return VariableDefinition;\n}();\n\nfunction isVariable(value) {\n return VariableDefinition.prototype.isPrototypeOf(value);\n}\n\nfunction variable(name, type, defaultValue) {\n return new VariableDefinition(name, type, defaultValue);\n}\n\nvar Enum = function () {\n\n /**\n * This constructor should not be invoked directly.\n * Use the factory function {@link Client#enum} to create an Enum.\n *\n * @param {String} key The key of the enum.\n */\n function Enum(key) {\n classCallCheck(this, Enum);\n\n this.key = key;\n }\n\n /**\n * Returns the GraphQL query string for the enum (e.g. `enumKey`).\n *\n * @return {String} The GraphQL query string for the enum.\n */\n\n createClass(Enum, [{\n key: \"toString\",\n value: function toString() {\n return this.key;\n }\n }, {\n key: \"valueOf\",\n value: function valueOf() {\n return this.key.valueOf();\n }\n }]);\n return Enum;\n}();\n\nvar enumFunction = function enumFunction(key) {\n return new Enum(key);\n};\n\nvar Scalar = function () {\n function Scalar(value) {\n classCallCheck(this, Scalar);\n\n this.value = value;\n }\n\n createClass(Scalar, [{\n key: \"toString\",\n value: function toString() {\n return this.value.toString();\n }\n }, {\n key: \"valueOf\",\n value: function valueOf() {\n return this.value.valueOf();\n }\n }, {\n key: \"unwrapped\",\n get: function get$$1() {\n return this.value;\n }\n }]);\n return Scalar;\n}();\n\nfunction formatInputValue(value) {\n if (VariableDefinition.prototype.isPrototypeOf(value)) {\n return value.toInputValueString();\n } else if (Enum.prototype.isPrototypeOf(value)) {\n return String(value);\n } else if (Scalar.prototype.isPrototypeOf(value)) {\n return JSON.stringify(value.valueOf());\n } else if (Array.isArray(value)) {\n return '[' + join.apply(undefined, toConsumableArray(value.map(formatInputValue))) + ']';\n } else if (isObject(value)) {\n return formatObject(value, '{', '}');\n } else {\n return JSON.stringify(value);\n }\n}\n\nfunction formatObject(value) {\n var openChar = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var closeChar = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';\n\n var argPairs = Object.keys(value).map(function (key) {\n return key + ': ' + formatInputValue(value[key]);\n });\n\n return '' + openChar + join.apply(undefined, toConsumableArray(argPairs)) + closeChar;\n}\n\nfunction formatArgs(args) {\n if (!Object.keys(args).length) {\n return '';\n }\n\n return ' (' + formatObject(args) + ')';\n}\n\nfunction formatDirectives(directives) {\n if (!Object.keys(directives).length) {\n return '';\n }\n\n var directiveStrings = Object.keys(directives).map(function (key) {\n var directiveArgs = directives[key];\n var arg = directiveArgs && Object.keys(directiveArgs).length ? '(' + formatObject(directiveArgs) + ')' : '';\n\n return '@' + key + arg;\n });\n\n return ' ' + join.apply(undefined, toConsumableArray(directiveStrings));\n}\n\n// eslint-disable-next-line no-empty-function\nvar noop = function noop() {};\n\nvar Profiler = {\n trackTypeDependency: noop,\n trackFieldDependency: noop\n};\n\nvar trackTypeDependency = Profiler.trackTypeDependency;\nvar trackFieldDependency = Profiler.trackFieldDependency;\n\nfunction parseFieldCreationArgs(creationArgs) {\n var callback = noop;\n var options = {};\n var selectionSet = null;\n\n if (creationArgs.length === 2) {\n if (typeof creationArgs[1] === 'function') {\n var _creationArgs = slicedToArray(creationArgs, 2);\n\n options = _creationArgs[0];\n callback = _creationArgs[1];\n } else {\n var _creationArgs2 = slicedToArray(creationArgs, 2);\n\n options = _creationArgs2[0];\n selectionSet = _creationArgs2[1];\n }\n } else if (creationArgs.length === 1) {\n // SelectionSet is defined before this function is called since it's\n // called by SelectionSet\n // eslint-disable-next-line no-use-before-define\n if (SelectionSet.prototype.isPrototypeOf(creationArgs[0])) {\n selectionSet = creationArgs[0];\n } else if (typeof creationArgs[0] === 'function') {\n callback = creationArgs[0];\n } else {\n options = creationArgs[0];\n }\n }\n\n return { options: options, selectionSet: selectionSet, callback: callback };\n}\n\nvar emptyArgs = Object.freeze({});\nvar emptyDirectives = Object.freeze({});\n\nvar Field = function () {\n\n /**\n * This constructor should not be invoked directly.\n * Fields are added to a selection by {@link SelectionSetBuilder#add}, {@link SelectionSetBuilder#addConnection}\n * and {@link SelectionSetBuilder#addInlineFragmentOn}.\n *\n * @param {String} name The name of the field.\n * @param {Object} [options] An options object containing:\n * @param {Object} [options.args] Arguments for the field.\n * @param {String} [options.alias] An alias for the field.\n * @param {Object} [options.directives] Directives for the field.\n * @param {SelectionSet} selectionSet The selection set on the field.\n */\n function Field(name, options, selectionSet) {\n classCallCheck(this, Field);\n\n this.name = name;\n this.alias = options.alias || null;\n this.responseKey = this.alias || this.name;\n this.args = options.args ? deepFreezeCopyExcept(isVariable, options.args) : emptyArgs;\n this.directives = options.directives ? deepFreezeCopyExcept(isVariable, options.directives) : emptyDirectives;\n this.selectionSet = selectionSet;\n Object.freeze(this);\n }\n\n /**\n * Returns the GraphQL query string for the Field (e.g. `catAlias: cat(size: 'small') { name }` or `name`).\n *\n * @return {String} The GraphQL query string for the Field.\n */\n\n createClass(Field, [{\n key: 'toString',\n value: function toString() {\n var aliasPrefix = this.alias ? this.alias + ': ' : '';\n\n return '' + aliasPrefix + this.name + formatArgs(this.args) + formatDirectives(this.directives) + this.selectionSet;\n }\n }]);\n return Field;\n}();\n\n// This is an interface that defines a usage, and simplifies type checking\nvar Spread = function Spread() {\n classCallCheck(this, Spread);\n};\n\nvar InlineFragment = function (_Spread) {\n inherits(InlineFragment, _Spread);\n\n /**\n * This constructor should not be invoked directly.\n * Use the factory function {@link SelectionSetBuilder#addInlineFragmentOn} to create an InlineFragment.\n *\n * @param {String} typeName The type of the fragment.\n * @param {SelectionSet} selectionSet The selection set on the fragment.\n */\n function InlineFragment(typeName, selectionSet) {\n classCallCheck(this, InlineFragment);\n\n var _this = possibleConstructorReturn(this, (InlineFragment.__proto__ || Object.getPrototypeOf(InlineFragment)).call(this));\n\n _this.typeName = typeName;\n _this.selectionSet = selectionSet;\n Object.freeze(_this);\n return _this;\n }\n\n /**\n * Returns the GraphQL query string for the InlineFragment (e.g. `... on Cat { name }`).\n *\n * @return {String} The GraphQL query string for the InlineFragment.\n */\n\n createClass(InlineFragment, [{\n key: 'toString',\n value: function toString() {\n return '... on ' + this.typeName + this.selectionSet;\n }\n }]);\n return InlineFragment;\n}(Spread);\n\nvar FragmentSpread = function (_Spread2) {\n inherits(FragmentSpread, _Spread2);\n\n /**\n * This constructor should not be invoked directly.\n * Use the factory function {@link Document#defineFragment} to create a FragmentSpread.\n *\n * @param {FragmentDefinition} fragmentDefinition The corresponding fragment definition.\n */\n function FragmentSpread(fragmentDefinition) {\n classCallCheck(this, FragmentSpread);\n\n var _this2 = possibleConstructorReturn(this, (FragmentSpread.__proto__ || Object.getPrototypeOf(FragmentSpread)).call(this));\n\n _this2.name = fragmentDefinition.name;\n _this2.selectionSet = fragmentDefinition.selectionSet;\n Object.freeze(_this2);\n return _this2;\n }\n\n /**\n * Returns the GraphQL query string for the FragmentSpread (e.g. `...catName`).\n *\n * @return {String} The GraphQL query string for the FragmentSpread.\n */\n\n createClass(FragmentSpread, [{\n key: 'toString',\n value: function toString() {\n return '...' + this.name;\n }\n }, {\n key: 'toDefinition',\n value: function toDefinition() {\n // eslint-disable-next-line no-use-before-define\n return new FragmentDefinition(this.name, this.selectionSet.typeSchema.name, this.selectionSet);\n }\n }]);\n return FragmentSpread;\n}(Spread);\n\nvar FragmentDefinition = function () {\n\n /**\n * This constructor should not be invoked directly.\n * Use the factory function {@link Document#defineFragment} to create a FragmentDefinition on a {@link Document}.\n *\n * @param {String} name The name of the fragment definition.\n * @param {String} typeName The type of the fragment.\n */\n function FragmentDefinition(name, typeName, selectionSet) {\n classCallCheck(this, FragmentDefinition);\n\n this.name = name;\n this.typeName = typeName;\n this.selectionSet = selectionSet;\n this.spread = new FragmentSpread(this);\n Object.freeze(this);\n }\n\n /**\n * Returns the GraphQL query string for the FragmentDefinition (e.g. `fragment catName on Cat { name }`).\n *\n * @return {String} The GraphQL query string for the FragmentDefinition.\n */\n\n createClass(FragmentDefinition, [{\n key: 'toString',\n value: function toString() {\n return 'fragment ' + this.name + ' on ' + this.typeName + ' ' + this.selectionSet;\n }\n }]);\n return FragmentDefinition;\n}();\n\nfunction selectionsHaveIdField(selections) {\n return selections.some(function (fieldOrFragment) {\n if (Field.prototype.isPrototypeOf(fieldOrFragment)) {\n return fieldOrFragment.name === 'id';\n } else if (Spread.prototype.isPrototypeOf(fieldOrFragment) && fieldOrFragment.selectionSet.typeSchema.implementsNode) {\n return selectionsHaveIdField(fieldOrFragment.selectionSet.selections);\n }\n\n return false;\n });\n}\n\nfunction selectionsHaveTypenameField(selections) {\n return selections.some(function (fieldOrFragment) {\n if (Field.prototype.isPrototypeOf(fieldOrFragment)) {\n return fieldOrFragment.name === '__typename';\n } else if (Spread.prototype.isPrototypeOf(fieldOrFragment) && fieldOrFragment.selectionSet.typeSchema.implementsNode) {\n return selectionsHaveTypenameField(fieldOrFragment.selectionSet.selections);\n }\n\n return false;\n });\n}\n\nfunction indexSelectionsByResponseKey(selections) {\n function assignOrPush(obj, key, value) {\n if (Array.isArray(obj[key])) {\n obj[key].push(value);\n } else {\n obj[key] = [value];\n }\n }\n var unfrozenObject = selections.reduce(function (acc, selection) {\n if (selection.responseKey) {\n assignOrPush(acc, selection.responseKey, selection);\n } else {\n var responseKeys = Object.keys(selection.selectionSet.selectionsByResponseKey);\n\n responseKeys.forEach(function (responseKey) {\n assignOrPush(acc, responseKey, selection);\n });\n }\n\n return acc;\n }, {});\n\n Object.keys(unfrozenObject).forEach(function (key) {\n Object.freeze(unfrozenObject[key]);\n });\n\n return Object.freeze(unfrozenObject);\n}\n\n/**\n * Class that specifies the full selection of data to query.\n */\n\nvar SelectionSet = function () {\n\n /**\n * This constructor should not be invoked directly. SelectionSets are created when building queries/mutations.\n *\n * @param {Object} typeBundle A set of ES6 modules generated by {@link https://github.com/Shopify/graphql-js-schema|graphql-js-schema}.\n * @param {(Object|String)} type The type of the current selection.\n * @param {Function} builderFunction Callback function used to build the SelectionSet.\n * The callback takes a {@link SelectionSetBuilder} as its argument.\n */\n function SelectionSet(typeBundle, type, builderFunction) {\n classCallCheck(this, SelectionSet);\n\n if (typeof type === 'string') {\n this.typeSchema = schemaForType(typeBundle, type);\n } else {\n this.typeSchema = type;\n }\n\n trackTypeDependency(this.typeSchema.name);\n\n this.typeBundle = typeBundle;\n this.selections = [];\n if (builderFunction) {\n // eslint-disable-next-line no-use-before-define\n builderFunction(new SelectionSetBuilder(this.typeBundle, this.typeSchema, this.selections));\n }\n\n if (this.typeSchema.implementsNode || this.typeSchema.name === 'Node') {\n if (!selectionsHaveIdField(this.selections)) {\n this.selections.unshift(new Field('id', {}, new SelectionSet(typeBundle, 'ID')));\n }\n }\n\n if (this.typeSchema.kind === 'INTERFACE') {\n if (!selectionsHaveTypenameField(this.selections)) {\n this.selections.unshift(new Field('__typename', {}, new SelectionSet(typeBundle, 'String')));\n }\n }\n\n this.selectionsByResponseKey = indexSelectionsByResponseKey(this.selections);\n Object.freeze(this.selections);\n Object.freeze(this);\n }\n\n /**\n * Returns the GraphQL query string for the SelectionSet (e.g. `{ cat { name } }`).\n *\n * @return {String} The GraphQL query string for the SelectionSet.\n */\n\n createClass(SelectionSet, [{\n key: 'toString',\n value: function toString() {\n if (this.typeSchema.kind === 'SCALAR' || this.typeSchema.kind === 'ENUM') {\n return '';\n } else {\n return ' { ' + join(this.selections) + ' }';\n }\n }\n }]);\n return SelectionSet;\n}();\n\nvar SelectionSetBuilder = function () {\n\n /**\n * This constructor should not be invoked directly. SelectionSetBuilders are created when building queries/mutations.\n *\n * @param {Object} typeBundle A set of ES6 modules generated by {@link https://github.com/Shopify/graphql-js-schema|graphql-js-schema}.\n * @param {Object} typeSchema The schema object for the type of the current selection.\n * @param {Field[]} selections The fields on the current selection.\n */\n function SelectionSetBuilder(typeBundle, typeSchema, selections) {\n classCallCheck(this, SelectionSetBuilder);\n\n this.typeBundle = typeBundle;\n this.typeSchema = typeSchema;\n this.selections = selections;\n }\n\n createClass(SelectionSetBuilder, [{\n key: 'hasSelectionWithResponseKey',\n value: function hasSelectionWithResponseKey(responseKey) {\n return this.selections.some(function (field) {\n return field.responseKey === responseKey;\n });\n }\n\n /**\n * Adds a field to be queried on the current selection.\n *\n * @example\n * client.query((root) => {\n * root.add('cat', {args: {id: '123456'}, alias: 'meow'}, (cat) => {\n * cat.add('name');\n * });\n * });\n *\n * @param {SelectionSet|String} selectionOrFieldName The selection or name of the field to add.\n * @param {Object} [options] Options on the query including:\n * @param {Object} [options.args] Arguments on the query (e.g. `{id: '123456'}`).\n * @param {String} [options.alias] Alias for the field being added.\n * @param {Function|SelectionSet} [callbackOrSelectionSet] Either a callback which will be used to create a new {@link SelectionSet}, or an existing {@link SelectionSet}.\n */\n\n }, {\n key: 'add',\n value: function add(selectionOrFieldName) {\n var selection = void 0;\n\n if (Object.prototype.toString.call(selectionOrFieldName) === '[object String]') {\n trackFieldDependency(this.typeSchema.name, selectionOrFieldName);\n\n for (var _len = arguments.length, rest = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n rest[_key - 1] = arguments[_key];\n }\n\n selection = this.field.apply(this, [selectionOrFieldName].concat(rest));\n } else {\n if (Field.prototype.isPrototypeOf(selectionOrFieldName)) {\n trackFieldDependency(this.typeSchema.name, selectionOrFieldName.name);\n }\n\n selection = selectionOrFieldName;\n }\n\n if (selection.responseKey && this.hasSelectionWithResponseKey(selection.responseKey)) {\n throw new Error('The field name or alias \\'' + selection.responseKey + '\\' has already been added.');\n }\n this.selections.push(selection);\n }\n }, {\n key: 'field',\n value: function field(name) {\n for (var _len2 = arguments.length, creationArgs = Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n creationArgs[_key2 - 1] = arguments[_key2];\n }\n\n var parsedArgs = parseFieldCreationArgs(creationArgs);\n var options = parsedArgs.options,\n callback = parsedArgs.callback;\n var selectionSet = parsedArgs.selectionSet;\n\n if (!selectionSet) {\n if (!this.typeSchema.fieldBaseTypes[name]) {\n throw new Error('No field of name \"' + name + '\" found on type \"' + this.typeSchema.name + '\" in schema');\n }\n\n var fieldBaseType = schemaForType(this.typeBundle, this.typeSchema.fieldBaseTypes[name]);\n\n selectionSet = new SelectionSet(this.typeBundle, fieldBaseType, callback);\n }\n\n return new Field(name, options, selectionSet);\n }\n\n /**\n * Creates an inline fragment.\n *\n * @access private\n * @param {String} typeName The type the inline fragment.\n * @param {Function|SelectionSet} [callbackOrSelectionSet] Either a callback which will be used to create a new {@link SelectionSet}, or an existing {@link SelectionSet}.\n * @return {InlineFragment} An inline fragment.\n */\n\n }, {\n key: 'inlineFragmentOn',\n value: function inlineFragmentOn(typeName) {\n var builderFunctionOrSelectionSet = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n\n var selectionSet = void 0;\n\n if (SelectionSet.prototype.isPrototypeOf(builderFunctionOrSelectionSet)) {\n selectionSet = builderFunctionOrSelectionSet;\n } else {\n selectionSet = new SelectionSet(this.typeBundle, schemaForType(this.typeBundle, typeName), builderFunctionOrSelectionSet);\n }\n\n return new InlineFragment(typeName, selectionSet);\n }\n\n /**\n * Adds a field to be queried on the current selection.\n *\n * @access private\n * @param {String} name The name of the field to add to the query.\n * @param {Object} [options] Options on the query including:\n * @param {Object} [options.args] Arguments on the query (e.g. `{id: '123456'}`).\n * @param {String} [options.alias] Alias for the field being added.\n * @param {Function} [callback] Callback which will be used to create a new {@link SelectionSet} for the field added.\n */\n\n }, {\n key: 'addField',\n value: function addField(name) {\n for (var _len3 = arguments.length, creationArgs = Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {\n creationArgs[_key3 - 1] = arguments[_key3];\n }\n\n this.add.apply(this, [name].concat(creationArgs));\n }\n\n /**\n * Adds a connection to be queried on the current selection.\n * This adds all the fields necessary for pagination.\n *\n * @example\n * client.query((root) => {\n * root.add('cat', (cat) => {\n * cat.addConnection('friends', {args: {first: 10}, alias: 'coolCats'}, (friends) => {\n * friends.add('name');\n * });\n * });\n * });\n *\n * @param {String} name The name of the connection to add to the query.\n * @param {Object} [options] Options on the query including:\n * @param {Object} [options.args] Arguments on the query (e.g. `{first: 10}`).\n * @param {String} [options.alias] Alias for the field being added.\n * @param {Function|SelectionSet} [callbackOrSelectionSet] Either a callback which will be used to create a new {@link SelectionSet}, or an existing {@link SelectionSet}.\n */\n\n }, {\n key: 'addConnection',\n value: function addConnection(name) {\n for (var _len4 = arguments.length, creationArgs = Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n creationArgs[_key4 - 1] = arguments[_key4];\n }\n\n var _parseFieldCreationAr = parseFieldCreationArgs(creationArgs),\n options = _parseFieldCreationAr.options,\n callback = _parseFieldCreationAr.callback,\n selectionSet = _parseFieldCreationAr.selectionSet;\n\n this.add(name, options, function (connection) {\n connection.add('pageInfo', {}, function (pageInfo) {\n pageInfo.add('hasNextPage');\n pageInfo.add('hasPreviousPage');\n });\n connection.add('edges', {}, function (edges) {\n edges.add('cursor');\n edges.addField('node', {}, selectionSet || callback); // This is bad. Don't do this\n });\n });\n }\n\n /**\n * Adds an inline fragment on the current selection.\n *\n * @example\n * client.query((root) => {\n * root.add('animal', (animal) => {\n * animal.addInlineFragmentOn('cat', (cat) => {\n * cat.add('name');\n * });\n * });\n * });\n *\n * @param {String} typeName The name of the type of the inline fragment.\n * @param {Function|SelectionSet} [callbackOrSelectionSet] Either a callback which will be used to create a new {@link SelectionSet}, or an existing {@link SelectionSet}.\n */\n\n }, {\n key: 'addInlineFragmentOn',\n value: function addInlineFragmentOn(typeName) {\n var fieldTypeCb = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n\n this.add(this.inlineFragmentOn(typeName, fieldTypeCb));\n }\n\n /**\n * Adds a fragment spread on the current selection.\n *\n * @example\n * client.query((root) => {\n * root.addFragment(catFragmentSpread);\n * });\n *\n * @param {FragmentSpread} fragmentSpread The fragment spread to add.\n */\n\n }, {\n key: 'addFragment',\n value: function addFragment(fragmentSpread) {\n this.add(fragmentSpread);\n }\n }]);\n return SelectionSetBuilder;\n}();\n\nfunction parseArgs(args) {\n var name = void 0;\n var variables = void 0;\n var selectionSetCallback = void 0;\n\n if (args.length === 3) {\n var _args = slicedToArray(args, 3);\n\n name = _args[0];\n variables = _args[1];\n selectionSetCallback = _args[2];\n } else if (args.length === 2) {\n if (Object.prototype.toString.call(args[0]) === '[object String]') {\n name = args[0];\n variables = null;\n } else if (Array.isArray(args[0])) {\n variables = args[0];\n name = null;\n }\n\n selectionSetCallback = args[1];\n } else {\n selectionSetCallback = args[0];\n name = null;\n }\n\n return { name: name, variables: variables, selectionSetCallback: selectionSetCallback };\n}\n\nvar VariableDefinitions = function () {\n function VariableDefinitions(variableDefinitions) {\n classCallCheck(this, VariableDefinitions);\n\n this.variableDefinitions = variableDefinitions ? [].concat(toConsumableArray(variableDefinitions)) : [];\n Object.freeze(this.variableDefinitions);\n Object.freeze(this);\n }\n\n createClass(VariableDefinitions, [{\n key: 'toString',\n value: function toString() {\n if (this.variableDefinitions.length === 0) {\n return '';\n }\n\n return ' (' + join(this.variableDefinitions) + ') ';\n }\n }]);\n return VariableDefinitions;\n}();\n\n/**\n * Base class for {@link Query} and {@link Mutation}.\n * @abstract\n */\n\nvar Operation = function () {\n\n /**\n * This constructor should not be invoked. The subclasses {@link Query} and {@link Mutation} should be used instead.\n */\n function Operation(typeBundle, operationType) {\n classCallCheck(this, Operation);\n\n for (var _len = arguments.length, args = Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n\n var _parseArgs = parseArgs(args),\n name = _parseArgs.name,\n variables = _parseArgs.variables,\n selectionSetCallback = _parseArgs.selectionSetCallback;\n\n this.typeBundle = typeBundle;\n this.name = name;\n this.variableDefinitions = new VariableDefinitions(variables);\n this.operationType = operationType;\n if (operationType === 'query') {\n this.selectionSet = new SelectionSet(typeBundle, typeBundle.queryType, selectionSetCallback);\n this.typeSchema = schemaForType(typeBundle, typeBundle.queryType);\n } else {\n this.selectionSet = new SelectionSet(typeBundle, typeBundle.mutationType, selectionSetCallback);\n this.typeSchema = schemaForType(typeBundle, typeBundle.mutationType);\n }\n Object.freeze(this);\n }\n\n /**\n * Whether the operation is anonymous (i.e. has no name).\n */\n\n createClass(Operation, [{\n key: 'toString',\n\n /**\n * Returns the GraphQL query or mutation string (e.g. `query myQuery { cat { name } }`).\n *\n * @return {String} The GraphQL query or mutation string.\n */\n value: function toString() {\n var nameString = this.name ? ' ' + this.name : '';\n\n return '' + this.operationType + nameString + this.variableDefinitions + this.selectionSet;\n }\n }, {\n key: 'isAnonymous',\n get: function get$$1() {\n return !this.name;\n }\n }]);\n return Operation;\n}();\n\n/**\n * GraphQL Query class.\n * @extends Operation\n */\n\nvar Query = function (_Operation) {\n inherits(Query, _Operation);\n\n /**\n * This constructor should not be invoked directly.\n * Use the factory functions {@link Client#query} or {@link Document#addQuery} to create a Query.\n *\n * @param {Object} typeBundle A set of ES6 modules generated by {@link https://github.com/Shopify/graphql-js-schema|graphql-js-schema}.\n * @param {String} [name] A name for the query.\n * @param {Object[]} [variables] A list of variables in the query. See {@link Client#variable}.\n * @param {Function} selectionSetCallback The query builder callback.\n * A {@link SelectionSet} is created using this callback.\n */\n function Query(typeBundle) {\n var _ref;\n\n classCallCheck(this, Query);\n\n for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return possibleConstructorReturn(this, (_ref = Query.__proto__ || Object.getPrototypeOf(Query)).call.apply(_ref, [this, typeBundle, 'query'].concat(args)));\n }\n\n return Query;\n}(Operation);\n\n/**\n * GraphQL Mutation class.\n * @extends Operation\n */\n\nvar Mutation = function (_Operation) {\n inherits(Mutation, _Operation);\n\n /**\n * This constructor should not be invoked directly.\n * Use the factory functions {@link Client#mutation} or {@link Document#addMutation} to create a Mutation.\n *\n * @param {Object} typeBundle A set of ES6 modules generated by {@link https://github.com/Shopify/graphql-js-schema|graphql-js-schema}.\n * @param {String} [name] A name for the mutation.\n * @param {Object[]} [variables] A list of variables in the mutation. See {@link Client#variable}.\n * @param {Function} selectionSetCallback The mutation builder callback.\n * A {@link SelectionSet} is created using this callback.\n */\n function Mutation(typeBundle) {\n var _ref;\n\n classCallCheck(this, Mutation);\n\n for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return possibleConstructorReturn(this, (_ref = Mutation.__proto__ || Object.getPrototypeOf(Mutation)).call.apply(_ref, [this, typeBundle, 'mutation'].concat(args)));\n }\n\n return Mutation;\n}(Operation);\n\nfunction isAnonymous(operation) {\n return operation.isAnonymous;\n}\n\nfunction hasAnonymousOperations(operations) {\n return operations.some(isAnonymous);\n}\n\nfunction hasDuplicateOperationNames(operations) {\n var names = operations.map(function (operation) {\n return operation.name;\n });\n\n return names.reduce(function (hasDuplicates, name, index) {\n return hasDuplicates || names.indexOf(name) !== index;\n }, false);\n}\n\nfunction extractOperation(typeBundle, operationType) {\n for (var _len = arguments.length, args = Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n\n if (Operation.prototype.isPrototypeOf(args[0])) {\n return args[0];\n }\n\n if (operationType === 'query') {\n return new (Function.prototype.bind.apply(Query, [null].concat([typeBundle], args)))();\n } else {\n return new (Function.prototype.bind.apply(Mutation, [null].concat([typeBundle], args)))();\n }\n}\n\nfunction isInvalidOperationCombination(operations) {\n if (operations.length === 1) {\n return false;\n }\n\n return hasAnonymousOperations(operations) || hasDuplicateOperationNames(operations);\n}\n\nfunction fragmentNameIsNotUnique(existingDefinitions, name) {\n return existingDefinitions.some(function (definition) {\n return definition.name === name;\n });\n}\n\nvar Document = function () {\n\n /**\n * This constructor should not be invoked directly.\n * Use the factory function {@link Client#document} to create a Document.\n * @param {Object} typeBundle A set of ES6 modules generated by {@link https://github.com/Shopify/graphql-js-schema|graphql-js-schema}.\n */\n function Document(typeBundle) {\n classCallCheck(this, Document);\n\n this.typeBundle = typeBundle;\n this.definitions = [];\n }\n\n /**\n * Returns the GraphQL query string for the Document (e.g. `query queryOne { ... } query queryTwo { ... }`).\n *\n * @return {String} The GraphQL query string for the Document.\n */\n\n createClass(Document, [{\n key: 'toString',\n value: function toString() {\n return join(this.definitions);\n }\n\n /**\n * Adds an operation to the Document.\n *\n * @private\n * @param {String} operationType The type of the operation. Either 'query' or 'mutation'.\n * @param {(Operation|String)} [query|queryName] Either an instance of an operation\n * object, or the name of an operation. Both are optional.\n * @param {Object[]} [variables] A list of variables in the operation. See {@link Client#variable}.\n * @param {Function} [callback] The query builder callback. If an operation\n * instance is passed, this callback will be ignored.\n * A {@link SelectionSet} is created using this callback.\n */\n\n }, {\n key: 'addOperation',\n value: function addOperation(operationType) {\n for (var _len2 = arguments.length, args = Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n var operation = extractOperation.apply(undefined, [this.typeBundle, operationType].concat(args));\n\n if (isInvalidOperationCombination(this.operations.concat(operation))) {\n throw new Error('All operations must be uniquely named on a multi-operation document');\n }\n\n this.definitions.push(operation);\n }\n\n /**\n * Adds a query to the Document.\n *\n * @example\n * document.addQuery('myQuery', (root) => {\n * root.add('cat', (cat) => {\n * cat.add('name');\n * });\n * });\n *\n * @param {(Query|String)} [query|queryName] Either an instance of a query\n * object, or the name of a query. Both are optional.\n * @param {Object[]} [variables] A list of variables in the query. See {@link Client#variable}.\n * @param {Function} [callback] The query builder callback. If a query\n * instance is passed, this callback will be ignored.\n * A {@link SelectionSet} is created using this callback.\n */\n\n }, {\n key: 'addQuery',\n value: function addQuery() {\n for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n this.addOperation.apply(this, ['query'].concat(args));\n }\n\n /**\n * Adds a mutation to the Document.\n *\n * @example\n * const input = client.variable('input', 'CatCreateInput!');\n *\n * document.addMutation('myMutation', [input], (root) => {\n * root.add('catCreate', {args: {input}}, (catCreate) => {\n * catCreate.add('cat', (cat) => {\n * cat.add('name');\n * });\n * });\n * });\n *\n * @param {(Mutation|String)} [mutation|mutationName] Either an instance of a mutation\n * object, or the name of a mutation. Both are optional.\n * @param {Object[]} [variables] A list of variables in the mutation. See {@link Client#variable}.\n * @param {Function} [callback] The mutation builder callback. If a mutation\n * instance is passed, this callback will be ignored.\n * A {@link SelectionSet} is created using this callback.\n */\n\n }, {\n key: 'addMutation',\n value: function addMutation() {\n for (var _len4 = arguments.length, args = Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n\n this.addOperation.apply(this, ['mutation'].concat(args));\n }\n\n /**\n * Defines a fragment on the Document.\n *\n * @param {String} name The name of the fragment.\n * @param {String} onType The type the fragment is on.\n * @param {Function} [builderFunction] The query builder callback.\n * A {@link SelectionSet} is created using this callback.\n * @return {FragmentSpread} A {@link FragmentSpread} to be used with {@link SelectionSetBuilder#addFragment}.\n */\n\n }, {\n key: 'defineFragment',\n value: function defineFragment(name, onType, builderFunction) {\n if (fragmentNameIsNotUnique(this.fragmentDefinitions, name)) {\n throw new Error('All fragments must be uniquely named on a multi-fragment document');\n }\n\n var selectionSet = new SelectionSet(this.typeBundle, onType, builderFunction);\n var fragment = new FragmentDefinition(name, onType, selectionSet);\n\n this.definitions.push(fragment);\n\n return fragment.spread;\n }\n\n /**\n * All operations ({@link Query} and {@link Mutation}) on the Document.\n */\n\n }, {\n key: 'operations',\n get: function get$$1() {\n return this.definitions.filter(function (definition) {\n return Operation.prototype.isPrototypeOf(definition);\n });\n }\n\n /**\n * All {@link FragmentDefinition}s on the Document.\n */\n\n }, {\n key: 'fragmentDefinitions',\n get: function get$$1() {\n return this.definitions.filter(function (definition) {\n return FragmentDefinition.prototype.isPrototypeOf(definition);\n });\n }\n }]);\n return Document;\n}();\n\n/**\n * The base class used when deserializing response data.\n * Provides rich features, like functions to generate queries to refetch a node or fetch the next page.\n *\n * @class\n */\nvar GraphModel =\n\n/**\n * @param {Object} attrs Attributes on the GraphModel.\n */\nfunction GraphModel(attrs) {\n var _this = this;\n\n classCallCheck(this, GraphModel);\n\n Object.defineProperty(this, 'attrs', { value: attrs, enumerable: false });\n\n Object.keys(this.attrs).filter(function (key) {\n return !(key in _this);\n }).forEach(function (key) {\n var descriptor = void 0;\n\n if (attrs[key] === null) {\n descriptor = {\n enumerable: true,\n get: function get$$1() {\n return null;\n }\n };\n } else {\n descriptor = {\n enumerable: true,\n get: function get$$1() {\n return this.attrs[key].valueOf();\n }\n };\n }\n Object.defineProperty(_this, key, descriptor);\n });\n};\n\n/**\n * A registry of classes used to deserialize the response data. Uses {@link GraphModel} by default.\n */\n\nvar ClassRegistry = function () {\n function ClassRegistry() {\n classCallCheck(this, ClassRegistry);\n\n this.classStore = {};\n }\n\n /**\n * Registers a class for a GraphQL type in the registry.\n *\n * @param {Class} constructor The constructor of the class.\n * @param {String} type The GraphQL type of the object to deserialize into the class.\n */\n\n createClass(ClassRegistry, [{\n key: 'registerClassForType',\n value: function registerClassForType(constructor, type) {\n this.classStore[type] = constructor;\n }\n\n /**\n * Unregisters a class for a GraphQL type in the registry.\n *\n * @param {String} type The GraphQL type to unregister.\n */\n\n }, {\n key: 'unregisterClassForType',\n value: function unregisterClassForType(type) {\n delete this.classStore[type];\n }\n\n /**\n * Returns the class for the given GraphQL type.\n *\n * @param {String} type The GraphQL type to look up.\n * @return {Class|GraphModel} The class for the given GraphQL type. Defaults to {@link GraphModel} if no class is registered for the GraphQL type.\n */\n\n }, {\n key: 'classForType',\n value: function classForType(type) {\n return this.classStore[type] || GraphModel;\n }\n }]);\n return ClassRegistry;\n}();\n\nfunction isValue(arg) {\n return Object.prototype.toString.call(arg) !== '[object Null]' && Object.prototype.toString.call(arg) !== '[object Undefined]';\n}\n\nfunction isNodeContext(context) {\n return context.selection.selectionSet.typeSchema.implementsNode;\n}\n\nfunction isConnection(context) {\n return context.selection.selectionSet.typeSchema.name.endsWith('Connection');\n}\n\nfunction nearestNode(context) {\n if (context == null) {\n return null;\n } else if (isNodeContext(context)) {\n return context;\n } else {\n return nearestNode(context.parent);\n }\n}\n\nfunction contextsFromRoot(context) {\n if (context.parent) {\n return contextsFromRoot(context.parent).concat(context);\n } else {\n return [context];\n }\n}\n\nfunction contextsFromNearestNode(context) {\n if (context.selection.selectionSet.typeSchema.implementsNode) {\n return [context];\n } else {\n return contextsFromNearestNode(context.parent).concat(context);\n }\n}\n\nfunction initializeDocumentAndVars(currentContext, contextChain) {\n var lastInChain = contextChain[contextChain.length - 1];\n var first = lastInChain.selection.args.first;\n var variableDefinitions = Object.keys(lastInChain.selection.args).filter(function (key) {\n return isVariable(lastInChain.selection.args[key]);\n }).map(function (key) {\n return lastInChain.selection.args[key];\n });\n\n var firstVar = variableDefinitions.find(function (definition) {\n return definition.name === 'first';\n });\n\n if (!firstVar) {\n if (isVariable(first)) {\n firstVar = first;\n } else {\n firstVar = variable('first', 'Int', first);\n variableDefinitions.push(firstVar);\n }\n }\n\n var document = new Document(currentContext.selection.selectionSet.typeBundle);\n\n return [document, variableDefinitions, firstVar];\n}\n\nfunction addNextFieldTo(currentSelection, contextChain, path, cursor) {\n // There are always at least two. When we start, it's the root context, and the first set\n var nextContext = contextChain.shift();\n\n path.push(nextContext.selection.responseKey);\n\n if (contextChain.length) {\n currentSelection.add(nextContext.selection.name, { alias: nextContext.selection.alias, args: nextContext.selection.args }, function (newSelection) {\n addNextFieldTo(newSelection, contextChain, path, cursor);\n });\n } else {\n var edgesField = nextContext.selection.selectionSet.selections.find(function (field) {\n return field.name === 'edges';\n });\n var nodeField = edgesField.selectionSet.selections.find(function (field) {\n return field.name === 'node';\n });\n var first = void 0;\n\n if (isVariable(nextContext.selection.args.first)) {\n first = nextContext.selection.args.first;\n } else {\n first = variable('first', 'Int', nextContext.selection.args.first);\n }\n\n var options = {\n alias: nextContext.selection.alias,\n args: Object.assign({}, nextContext.selection.args, { after: cursor, first: first })\n };\n\n currentSelection.addConnection(nextContext.selection.name, options, nodeField.selectionSet);\n }\n}\n\nfunction collectFragments(selections) {\n return selections.reduce(function (fragmentDefinitions, field) {\n if (FragmentSpread.prototype.isPrototypeOf(field)) {\n fragmentDefinitions.push(field.toDefinition());\n }\n\n fragmentDefinitions.push.apply(fragmentDefinitions, toConsumableArray(collectFragments(field.selectionSet.selections)));\n\n return fragmentDefinitions;\n }, []);\n}\n\nfunction nextPageQueryAndPath(context, cursor) {\n var nearestNodeContext = nearestNode(context);\n\n if (nearestNodeContext) {\n return function () {\n var _document$definitions;\n\n var path = [];\n var nodeType = nearestNodeContext.selection.selectionSet.typeSchema;\n var nodeId = nearestNodeContext.responseData.id;\n var contextChain = contextsFromNearestNode(context);\n\n var _initializeDocumentAn = initializeDocumentAndVars(context, contextChain),\n _initializeDocumentAn2 = slicedToArray(_initializeDocumentAn, 2),\n document = _initializeDocumentAn2[0],\n variableDefinitions = _initializeDocumentAn2[1];\n\n document.addQuery(variableDefinitions, function (root) {\n path.push('node');\n root.add('node', { args: { id: nodeId } }, function (node) {\n node.addInlineFragmentOn(nodeType.name, function (fragment) {\n addNextFieldTo(fragment, contextChain.slice(1), path, cursor);\n });\n });\n });\n\n var fragments = collectFragments(document.operations[0].selectionSet.selections);\n\n (_document$definitions = document.definitions).unshift.apply(_document$definitions, toConsumableArray(fragments));\n\n return [document, path];\n };\n } else {\n return function () {\n var _document$definitions2;\n\n var path = [];\n var contextChain = contextsFromRoot(context);\n\n var _initializeDocumentAn3 = initializeDocumentAndVars(context, contextChain),\n _initializeDocumentAn4 = slicedToArray(_initializeDocumentAn3, 2),\n document = _initializeDocumentAn4[0],\n variableDefinitions = _initializeDocumentAn4[1];\n\n document.addQuery(variableDefinitions, function (root) {\n addNextFieldTo(root, contextChain.slice(1), path, cursor);\n });\n\n var fragments = collectFragments(document.operations[0].selectionSet.selections);\n\n (_document$definitions2 = document.definitions).unshift.apply(_document$definitions2, toConsumableArray(fragments));\n\n return [document, path];\n };\n }\n}\n\nfunction hasNextPage$1(connection, edge) {\n if (edge !== connection.edges[connection.edges.length - 1]) {\n return new Scalar(true);\n }\n\n return connection.pageInfo.hasNextPage;\n}\n\nfunction hasPreviousPage(connection, edge) {\n if (edge !== connection.edges[0]) {\n return new Scalar(true);\n }\n\n return connection.pageInfo.hasPreviousPage;\n}\n\nfunction transformConnections(variableValues) {\n return function (context, value) {\n if (isConnection(context)) {\n if (!(value.pageInfo && value.pageInfo.hasOwnProperty('hasNextPage') && value.pageInfo.hasOwnProperty('hasPreviousPage'))) {\n throw new Error('Connections must include the selections \"pageInfo { hasNextPage, hasPreviousPage }\".');\n }\n\n return value.edges.map(function (edge) {\n return Object.assign(edge.node, {\n nextPageQueryAndPath: nextPageQueryAndPath(context, edge.cursor),\n hasNextPage: hasNextPage$1(value, edge),\n hasPreviousPage: hasPreviousPage(value, edge),\n variableValues: variableValues\n });\n });\n } else {\n return value;\n }\n };\n}\n\n/* eslint-disable no-warning-comments */\nvar DecodingContext = function () {\n function DecodingContext(selection, responseData) {\n var parent = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n classCallCheck(this, DecodingContext);\n\n this.selection = selection;\n this.responseData = responseData;\n this.parent = parent;\n Object.freeze(this);\n }\n\n createClass(DecodingContext, [{\n key: 'contextForObjectProperty',\n value: function contextForObjectProperty(responseKey) {\n var nestedSelections = this.selection.selectionSet.selectionsByResponseKey[responseKey];\n var nextSelection = nestedSelections && nestedSelections[0];\n var nextContext = void 0;\n\n // fragment spreads operate inside the current context, so we recurse to get the proper\n // selection set, but retain the current response context\n if (Spread.prototype.isPrototypeOf(nextSelection)) {\n nextContext = new DecodingContext(nextSelection, this.responseData, this.parent);\n } else {\n nextContext = new DecodingContext(nextSelection, this.responseData[responseKey], this);\n }\n\n if (!nextSelection) {\n throw new Error('Unexpected response key \"' + responseKey + '\", not found in selection set: ' + this.selection.selectionSet);\n }\n\n if (Field.prototype.isPrototypeOf(nextSelection)) {\n return nextContext;\n } else {\n return nextContext.contextForObjectProperty(responseKey);\n }\n }\n }, {\n key: 'contextForArrayItem',\n value: function contextForArrayItem(item) {\n return new DecodingContext(this.selection, item, this.parent);\n }\n }]);\n return DecodingContext;\n}();\n\nfunction decodeArrayItems(context, transformers) {\n return context.responseData.map(function (item) {\n return decodeContext(context.contextForArrayItem(item), transformers);\n });\n}\n\nfunction decodeObjectValues(context, transformers) {\n return Object.keys(context.responseData).reduce(function (acc, responseKey) {\n acc[responseKey] = decodeContext(context.contextForObjectProperty(responseKey), transformers);\n\n return acc;\n }, {});\n}\n\nfunction runTransformers(transformers, context, value) {\n return transformers.reduce(function (acc, transformer) {\n return transformer(context, acc);\n }, value);\n}\n\nfunction decodeContext(context, transformers) {\n var value = context.responseData;\n\n if (Array.isArray(value)) {\n value = decodeArrayItems(context, transformers);\n } else if (isObject(value)) {\n value = decodeObjectValues(context, transformers);\n }\n\n return runTransformers(transformers, context, value);\n}\n\nfunction generateRefetchQueries(context, value) {\n if (isValue(value) && isNodeContext(context)) {\n value.refetchQuery = function () {\n return new Query(context.selection.selectionSet.typeBundle, function (root) {\n root.add('node', { args: { id: context.responseData.id } }, function (node) {\n node.addInlineFragmentOn(context.selection.selectionSet.typeSchema.name, context.selection.selectionSet);\n });\n });\n };\n }\n\n return value;\n}\n\nfunction transformPojosToClassesWithRegistry(classRegistry) {\n return function transformPojosToClasses(context, value) {\n if (isObject(value)) {\n var Klass = classRegistry.classForType(context.selection.selectionSet.typeSchema.name);\n\n return new Klass(value);\n } else {\n return value;\n }\n };\n}\n\nfunction transformScalars(context, value) {\n if (isValue(value)) {\n if (context.selection.selectionSet.typeSchema.kind === 'SCALAR') {\n return new Scalar(value);\n } else if (context.selection.selectionSet.typeSchema.kind === 'ENUM') {\n return new Enum(value);\n }\n }\n\n return value;\n}\n\nfunction recordTypeInformation(context, value) {\n var _context$selection$se = context.selection.selectionSet,\n typeBundle = _context$selection$se.typeBundle,\n typeSchema = _context$selection$se.typeSchema;\n\n if (isValue(value)) {\n if (value.__typename) {\n value.type = schemaForType(typeBundle, value.__typename, typeSchema);\n } else {\n value.type = typeSchema;\n }\n }\n\n return value;\n}\n\nfunction defaultTransformers(_ref) {\n var _ref$classRegistry = _ref.classRegistry,\n classRegistry = _ref$classRegistry === undefined ? new ClassRegistry() : _ref$classRegistry,\n variableValues = _ref.variableValues;\n\n return [transformScalars, generateRefetchQueries, transformConnections(variableValues), recordTypeInformation, transformPojosToClassesWithRegistry(classRegistry)];\n}\n\n/**\n * A function used to decode the response data.\n *\n * @function decode\n * @param {SelectionSet} selection The selection set used to query the response data.\n * @param {Object} responseData The response data returned.\n * @param {Object} [options] Options to use when decoding including:\n * @param {ClassRegistry} [options.classRegistry] A class registry to use when deserializing the data into classes.\n * @return {GraphModel} The decoded response data.\n */\nfunction decode(selection, responseData) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n\n var transformers = options.transformers || defaultTransformers(options);\n var context = new DecodingContext(selection, responseData);\n\n return decodeContext(context, transformers);\n}\n\nfunction httpFetcher(url) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n return function fetcher(graphQLParams, headers) {\n return fetch(url, _extends({\n body: JSON.stringify(graphQLParams),\n method: 'POST',\n mode: 'cors'\n }, options, {\n headers: _extends({\n 'Content-Type': 'application/json',\n Accept: 'application/json'\n }, options.headers, headers)\n })).then(function (response) {\n var contentType = response.headers.get('content-type');\n\n if (contentType.indexOf('application/json') > -1) {\n return response.json();\n }\n\n return response.text().then(function (text) {\n return { text: text };\n });\n });\n };\n}\n\nfunction hasNextPage(paginatedModels) {\n return paginatedModels && paginatedModels.length && paginatedModels[paginatedModels.length - 1].hasNextPage;\n}\n\n/**\n * The Client class used to create and send GraphQL documents, fragments, queries and mutations.\n */\n\nvar Client$2 = function () {\n\n /**\n * @param {Object} typeBundle A set of ES6 modules generated by {@link https://github.com/Shopify/graphql-js-schema|graphql-js-schema}.\n * @param {Object} options An options object. Must include either `url` and optional `fetcherOptions` OR a `fetcher` function.\n * @param {(String|Function)} options.url|fetcher Either the URL of the GraphQL API endpoint, or a custom fetcher function for further customization.\n * @param {Object} [options.fetcherOptions] Additional options to use with `fetch`, like headers. Do not specify this argument if `fetcher` is specified.\n * @param {ClassRegistry} [options.registry=new ClassRegistry()] A {@link ClassRegistry} used to decode the response data.\n */\n function Client(typeBundle, _ref) {\n var url = _ref.url,\n fetcherOptions = _ref.fetcherOptions,\n fetcher = _ref.fetcher,\n _ref$registry = _ref.registry,\n registry = _ref$registry === undefined ? new ClassRegistry() : _ref$registry;\n classCallCheck(this, Client);\n\n this.typeBundle = typeBundle;\n this.classRegistry = registry;\n\n if (url && fetcher) {\n throw new Error('Arguments not supported: supply either `url` and optional `fetcherOptions` OR use a `fetcher` function for further customization.');\n }\n\n if (url) {\n this.fetcher = httpFetcher(url, fetcherOptions);\n } else if (fetcher) {\n if (fetcherOptions) {\n throw new Error('Arguments not supported: when specifying your own `fetcher`, set options through it and not with `fetcherOptions`');\n }\n\n this.fetcher = fetcher;\n } else {\n throw new Error('Invalid arguments: one of `url` or `fetcher` is needed.');\n }\n }\n\n /**\n * Creates a GraphQL document.\n *\n * @example\n * const document = client.document();\n *\n * @return {Document} A GraphQL document.\n */\n\n createClass(Client, [{\n key: 'document',\n value: function document() {\n return new Document(this.typeBundle);\n }\n\n /**\n * Creates a GraphQL query.\n *\n * @example\n * const query = client.query('myQuery', (root) => {\n * root.add('cat', (cat) => {\n * cat.add('name');\n * });\n * });\n *\n * @param {String} [name] A name for the query.\n * @param {VariableDefinition[]} [variables] A list of variables in the query. See {@link Client#variable}.\n * @param {Function} selectionSetCallback The query builder callback.\n * A {@link SelectionSet} is created using this callback.\n * @return {Query} A GraphQL query.\n */\n\n }, {\n key: 'query',\n value: function query() {\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return new (Function.prototype.bind.apply(Query, [null].concat([this.typeBundle], args)))();\n }\n\n /**\n * Creates a GraphQL mutation.\n *\n * @example\n * const input = client.variable('input', 'CatCreateInput!');\n *\n * const mutation = client.mutation('myMutation', [input], (root) => {\n * root.add('catCreate', {args: {input}}, (catCreate) => {\n * catCreate.add('cat', (cat) => {\n * cat.add('name');\n * });\n * });\n * });\n *\n * @param {String} [name] A name for the mutation.\n * @param {VariableDefinition[]} [variables] A list of variables in the mutation. See {@link Client#variable}.\n * @param {Function} selectionSetCallback The mutation builder callback.\n * A {@link SelectionSet} is created using this callback.\n * @return {Mutation} A GraphQL mutation.\n */\n\n }, {\n key: 'mutation',\n value: function mutation() {\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return new (Function.prototype.bind.apply(Mutation, [null].concat([this.typeBundle], args)))();\n }\n\n /**\n * Sends a GraphQL operation (query or mutation) or a document.\n *\n * @example\n * client.send(query, {id: '12345'}).then((result) => {\n * // Do something with the returned result\n * console.log(result);\n * });\n *\n * @param {(Query|Mutation|Document|Function)} request The operation or document to send. If represented\n * as a function, it must return `Query`, `Mutation`, or `Document` and recieve the client as the only param.\n * @param {Object} [variableValues] The values for variables in the operation or document.\n * @param {Object} [otherProperties] Other properties to send with the query. For example, a custom operation name.\n * @param {Object} [headers] Additional headers to be applied on a request by request basis.\n * @return {Promise.} A promise resolving to an object containing the response data.\n */\n\n }, {\n key: 'send',\n value: function send(request) {\n var variableValues = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n var _this = this;\n\n var otherProperties = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n var headers = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;\n\n var operationOrDocument = void 0;\n\n if (Function.prototype.isPrototypeOf(request)) {\n operationOrDocument = request(this);\n } else {\n operationOrDocument = request;\n }\n\n var graphQLParams = { query: operationOrDocument.toString() };\n\n if (variableValues) {\n graphQLParams.variables = variableValues;\n }\n\n Object.assign(graphQLParams, otherProperties);\n\n var operation = void 0;\n\n if (Operation.prototype.isPrototypeOf(operationOrDocument)) {\n operation = operationOrDocument;\n } else {\n var document = operationOrDocument;\n\n if (document.operations.length === 1) {\n operation = document.operations[0];\n } else if (otherProperties.operationName) {\n operation = document.operations.find(function (documentOperation) {\n return documentOperation.name === otherProperties.operationName;\n });\n } else {\n throw new Error('\\n A document must contain exactly one operation, or an operationName\\n must be specified. Example:\\n\\n client.send(document, null, {operationName: \\'myFancyQuery\\'});\\n ');\n }\n }\n\n return this.fetcher(graphQLParams, headers).then(function (response) {\n if (response.data) {\n response.model = decode(operation, response.data, {\n classRegistry: _this.classRegistry,\n variableValues: variableValues\n });\n }\n\n return response;\n });\n }\n\n /**\n * Fetches the next page of a paginated node or array of nodes.\n *\n * @example\n * client.fetchNextPage(node, {first: 10}).then((result) => {\n * // Do something with the next page\n * console.log(result);\n * });\n *\n * @param {(GraphModel|GraphModel[])} nodeOrNodes The node or list of nodes on which to fetch the next page.\n * @param {Object} [options] Options object containing:\n * @param {Integer} [options.first] The number of nodes to query on the next page. Defaults to the page size of the previous query.\n * @return {Promise.} A promise resolving with the next page of {@link GraphModel}s.\n */\n\n }, {\n key: 'fetchNextPage',\n value: function fetchNextPage(nodeOrNodes, options) {\n var node = void 0;\n\n if (Array.isArray(nodeOrNodes)) {\n node = nodeOrNodes[nodeOrNodes.length - 1];\n } else {\n node = nodeOrNodes;\n }\n\n var _node$nextPageQueryAn = node.nextPageQueryAndPath(),\n _node$nextPageQueryAn2 = slicedToArray(_node$nextPageQueryAn, 2),\n query = _node$nextPageQueryAn2[0],\n path = _node$nextPageQueryAn2[1];\n\n var variableValues = void 0;\n\n if (node.variableValues || options) {\n variableValues = Object.assign({}, node.variableValues, options);\n }\n\n return this.send(query, variableValues).then(function (response) {\n response.model = path.reduce(function (object, key) {\n return object[key];\n }, response.model);\n\n return response;\n });\n }\n\n /**\n * Fetches all subsequent pages of a paginated array of nodes.\n *\n * @example\n * client.fetchAllPages(nodes, {pageSize: 20}).then((result) => {\n * // Do something with all the models\n * console.log(result);\n * });\n *\n * @param {GraphModel[]} paginatedModels The list of nodes on which to fetch all pages.\n * @param {Object} options Options object containing:\n * @param {Integer} options.pageSize The number of nodes to query on each page.\n * @return {Promise.} A promise resolving with all pages of {@link GraphModel}s, including the original list.\n */\n\n }, {\n key: 'fetchAllPages',\n value: function fetchAllPages(paginatedModels, _ref2) {\n var _this2 = this;\n\n var pageSize = _ref2.pageSize;\n\n if (hasNextPage(paginatedModels)) {\n return this.fetchNextPage(paginatedModels, { first: pageSize }).then(function (_ref3) {\n var model = _ref3.model;\n\n var pages = paginatedModels.concat(model);\n\n return _this2.fetchAllPages(pages, { pageSize: pageSize });\n });\n }\n\n return Promise.resolve(paginatedModels);\n }\n\n /**\n * Refetches a {@link GraphModel} whose type implements `Node`.\n *\n * @example\n * client.refetch(node).then((result) => {\n * // Do something with the refetched node\n * console.log(result);\n * });\n *\n * @param {GraphModel} nodeType A {@link GraphModel} whose type implements `Node`.\n * @return {Promise.} The refetched {@link GraphModel}.\n */\n\n }, {\n key: 'refetch',\n value: function refetch(nodeType) {\n if (!nodeType) {\n throw new Error('\\'client#refetch\\' must be called with a non-null instance of a Node.');\n } else if (!nodeType.type.implementsNode) {\n throw new Error('\\'client#refetch\\' must be called with a type that implements Node. Received ' + nodeType.type.name + '.');\n }\n\n return this.send(nodeType.refetchQuery()).then(function (_ref4) {\n var model = _ref4.model;\n return model.node;\n });\n }\n\n /**\n * Creates a variable to be used in a {@link Query} or {@link Mutation}.\n *\n * @example\n * const idVariable = client.variable('id', 'ID!', '12345');\n *\n * @param {String} name The name of the variable.\n * @param {String} type The GraphQL type of the variable.\n * @param {*} [defaultValue] The default value of the variable.\n * @return {VariableDefinition} A variable object that can be used in a {@link Query} or {@link Mutation}.\n */\n\n }, {\n key: 'variable',\n value: function variable$$1(name, type, defaultValue) {\n return variable(name, type, defaultValue);\n }\n\n /**\n * Creates an enum to be used in a {@link Query} or {@link Mutation}.\n *\n * @example\n * const titleEnum = client.enum('TITLE');\n *\n * @param {String} key The key of the enum.\n * @return {Enum} An enum object that can be used in a {@link Query} or {@link Mutation}.\n */\n\n }, {\n key: 'enum',\n value: function _enum(key) {\n return enumFunction(key);\n }\n }]);\n return Client;\n}();\n\n/**\n * The class used to configure the JS Buy SDK Client.\n * @class\n */\nvar Config = function () {\n createClass$1(Config, [{\n key: 'requiredProperties',\n\n\n /**\n * Properties that must be set on initializations\n * @attribute requiredProperties\n * @default ['storefrontAccessToken', 'domain']\n * @type Array\n * @private\n */\n get: function get$$1() {\n return ['storefrontAccessToken', 'domain'];\n }\n\n /**\n * Deprecated properties that map directly to required properties\n * @attribute deprecatedProperties\n * @default {'accessToken': 'storefrontAccessToken', 'apiKey': 'storefrontAccessToken'}\n * @type Object\n * @private\n */\n\n }, {\n key: 'deprecatedProperties',\n get: function get$$1() {\n return {\n accessToken: 'storefrontAccessToken',\n apiKey: 'storefrontAccessToken'\n };\n }\n\n /**\n * @constructs Config\n * @param {Object} attrs An object specifying the configuration. Requires the following properties:\n * @param {String} attrs.storefrontAccessToken The {@link https://help.shopify.com/api/reference/storefront_access_token|Storefront access token} for the shop.\n * @param {String} attrs.domain The `myshopify` domain for the shop (e.g. `graphql.myshopify.com`).\n */\n\n }]);\n\n function Config(attrs) {\n var _this = this;\n\n classCallCheck$1(this, Config);\n\n Object.keys(this.deprecatedProperties).forEach(function (key) {\n if (!attrs.hasOwnProperty(key)) {\n return;\n }\n // eslint-disable-next-line no-console\n console.warn('[ShopifyBuy] Config property ' + key + ' is deprecated as of v1.0, please use ' + _this.deprecatedProperties[key] + ' instead.');\n attrs[_this.deprecatedProperties[key]] = attrs[key];\n });\n\n this.requiredProperties.forEach(function (key) {\n if (attrs.hasOwnProperty(key)) {\n _this[key] = attrs[key];\n } else {\n throw new Error('new Config() requires the option \\'' + key + '\\'');\n }\n });\n\n if (attrs.hasOwnProperty('apiVersion')) {\n this.apiVersion = attrs.apiVersion;\n } else {\n this.apiVersion = '2023-04';\n }\n\n if (attrs.hasOwnProperty('source')) {\n this.source = attrs.source;\n }\n\n if (attrs.hasOwnProperty('language')) {\n this.language = attrs.language;\n }\n }\n\n return Config;\n}();\n\nvar Resource = function Resource(client) {\n classCallCheck$1(this, Resource);\n\n this.graphQLClient = client;\n};\n\nvar defaultErrors = [{ message: 'an unknown error has occurred.' }];\n\nfunction defaultResolver(path) {\n var keys = path.split('.');\n\n return function (_ref) {\n var model = _ref.model,\n errors = _ref.errors;\n\n return new Promise(function (resolve, reject) {\n try {\n var result = keys.reduce(function (ref, key) {\n return ref[key];\n }, model);\n\n resolve(result);\n } catch (_) {\n if (errors) {\n reject(errors);\n } else {\n reject(defaultErrors);\n }\n }\n });\n };\n}\n\nfunction fetchResourcesForProducts(productOrProduct, client) {\n var products = [].concat(productOrProduct);\n\n return Promise.all(products.reduce(function (promiseAcc, product) {\n\n // If the graphql query doesn't find a match, skip fetching variants and images.\n if (product === null) {\n return promiseAcc;\n }\n\n // Fetch the rest of the images and variants for this product\n promiseAcc.push(client.fetchAllPages(product.images, { pageSize: 250 }).then(function (images) {\n product.attrs.images = images;\n }));\n\n promiseAcc.push(client.fetchAllPages(product.variants, { pageSize: 250 }).then(function (variants) {\n product.attrs.variants = variants;\n }));\n\n return promiseAcc;\n }, []));\n}\n\nfunction paginateProductConnectionsAndResolve(client) {\n return function (products) {\n return fetchResourcesForProducts(products, client).then(function () {\n return products;\n });\n };\n}\n\nfunction paginateCollectionsProductConnectionsAndResolve(client) {\n return function (collectionOrCollections) {\n var collections = [].concat(collectionOrCollections);\n\n return Promise.all(collections.reduce(function (promiseAcc, collection) {\n return promiseAcc.concat(fetchResourcesForProducts(collection.products, client));\n }, [])).then(function () {\n return collectionOrCollections;\n });\n };\n}\n\n/**\n * @namespace ProductHelpers\n */\nvar productHelpers = {\n\n /**\n * Returns the variant of a product corresponding to the options given.\n *\n * @example\n * const selectedVariant = client.product.helpers.variantForOptions(product, {\n * size: \"Small\",\n * color: \"Red\"\n * });\n *\n * @memberof ProductHelpers\n * @method variantForOptions\n * @param {GraphModel} product The product to find the variant on. Must include `variants`.\n * @param {Object} options An object containing the options for the variant.\n * @return {GraphModel} The variant corresponding to the options given.\n */\n variantForOptions: function variantForOptions(product, options) {\n return product.variants.find(function (variant) {\n return variant.selectedOptions.every(function (selectedOption) {\n return options[selectedOption.name] === selectedOption.value.valueOf();\n });\n });\n }\n};\n\nfunction query(client) {\n var document = client.document();\n var spreads = {};\n var variables = {};\n variables.__defaultOperation__ = {};\n variables.__defaultOperation__.id = client.variable(\"id\", \"ID!\");\n spreads.VariantFragment = document.defineFragment(\"VariantFragment\", \"ProductVariant\", function (root) {\n root.add(\"id\");\n root.add(\"title\");\n root.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"weight\");\n root.add(\"availableForSale\", {\n alias: \"available\"\n });\n root.add(\"sku\");\n root.add(\"compareAtPrice\", function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"compareAtPrice\", {\n alias: \"compareAtPriceV2\"\n }, function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n image.add(\"width\");\n image.add(\"height\");\n });\n root.add(\"selectedOptions\", function (selectedOptions) {\n selectedOptions.add(\"name\");\n selectedOptions.add(\"value\");\n });\n root.add(\"unitPrice\", function (unitPrice) {\n unitPrice.add(\"amount\");\n unitPrice.add(\"currencyCode\");\n });\n root.add(\"unitPriceMeasurement\", function (unitPriceMeasurement) {\n unitPriceMeasurement.add(\"measuredType\");\n unitPriceMeasurement.add(\"quantityUnit\");\n unitPriceMeasurement.add(\"quantityValue\");\n unitPriceMeasurement.add(\"referenceUnit\");\n unitPriceMeasurement.add(\"referenceValue\");\n });\n });\n spreads.ProductFragment = document.defineFragment(\"ProductFragment\", \"Product\", function (root) {\n root.add(\"id\");\n root.add(\"availableForSale\");\n root.add(\"createdAt\");\n root.add(\"updatedAt\");\n root.add(\"descriptionHtml\");\n root.add(\"description\");\n root.add(\"handle\");\n root.add(\"productType\");\n root.add(\"title\");\n root.add(\"vendor\");\n root.add(\"publishedAt\");\n root.add(\"onlineStoreUrl\");\n root.add(\"options\", function (options) {\n options.add(\"name\");\n options.add(\"values\");\n });\n root.add(\"images\", {\n args: {\n first: 250\n }\n }, function (images) {\n images.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n images.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"id\");\n node.add(\"url\", {\n alias: \"src\"\n });\n node.add(\"altText\");\n node.add(\"width\");\n node.add(\"height\");\n });\n });\n });\n root.add(\"variants\", {\n args: {\n first: 250\n }\n }, function (variants) {\n variants.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n variants.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.VariantFragment);\n });\n });\n });\n });\n document.addQuery([variables.__defaultOperation__.id], function (root) {\n root.add(\"node\", {\n args: {\n id: variables.__defaultOperation__.id\n }\n }, function (node) {\n node.addFragment(spreads.ProductFragment);\n });\n });\n return document;\n}\n\nfunction query$1(client) {\n var document = client.document();\n var spreads = {};\n var variables = {};\n variables.__defaultOperation__ = {};\n variables.__defaultOperation__.ids = client.variable(\"ids\", \"[ID!]!\");\n spreads.VariantFragment = document.defineFragment(\"VariantFragment\", \"ProductVariant\", function (root) {\n root.add(\"id\");\n root.add(\"title\");\n root.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"weight\");\n root.add(\"availableForSale\", {\n alias: \"available\"\n });\n root.add(\"sku\");\n root.add(\"compareAtPrice\", function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"compareAtPrice\", {\n alias: \"compareAtPriceV2\"\n }, function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n image.add(\"width\");\n image.add(\"height\");\n });\n root.add(\"selectedOptions\", function (selectedOptions) {\n selectedOptions.add(\"name\");\n selectedOptions.add(\"value\");\n });\n root.add(\"unitPrice\", function (unitPrice) {\n unitPrice.add(\"amount\");\n unitPrice.add(\"currencyCode\");\n });\n root.add(\"unitPriceMeasurement\", function (unitPriceMeasurement) {\n unitPriceMeasurement.add(\"measuredType\");\n unitPriceMeasurement.add(\"quantityUnit\");\n unitPriceMeasurement.add(\"quantityValue\");\n unitPriceMeasurement.add(\"referenceUnit\");\n unitPriceMeasurement.add(\"referenceValue\");\n });\n });\n spreads.ProductFragment = document.defineFragment(\"ProductFragment\", \"Product\", function (root) {\n root.add(\"id\");\n root.add(\"availableForSale\");\n root.add(\"createdAt\");\n root.add(\"updatedAt\");\n root.add(\"descriptionHtml\");\n root.add(\"description\");\n root.add(\"handle\");\n root.add(\"productType\");\n root.add(\"title\");\n root.add(\"vendor\");\n root.add(\"publishedAt\");\n root.add(\"onlineStoreUrl\");\n root.add(\"options\", function (options) {\n options.add(\"name\");\n options.add(\"values\");\n });\n root.add(\"images\", {\n args: {\n first: 250\n }\n }, function (images) {\n images.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n images.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"id\");\n node.add(\"url\", {\n alias: \"src\"\n });\n node.add(\"altText\");\n node.add(\"width\");\n node.add(\"height\");\n });\n });\n });\n root.add(\"variants\", {\n args: {\n first: 250\n }\n }, function (variants) {\n variants.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n variants.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.VariantFragment);\n });\n });\n });\n });\n document.addQuery([variables.__defaultOperation__.ids], function (root) {\n root.add(\"nodes\", {\n args: {\n ids: variables.__defaultOperation__.ids\n }\n }, function (nodes) {\n nodes.addFragment(spreads.ProductFragment);\n });\n });\n return document;\n}\n\nfunction query$2(client) {\n var document = client.document();\n var spreads = {};\n var variables = {};\n variables.__defaultOperation__ = {};\n variables.__defaultOperation__.first = client.variable(\"first\", \"Int!\");\n variables.__defaultOperation__.query = client.variable(\"query\", \"String\");\n variables.__defaultOperation__.sortKey = client.variable(\"sortKey\", \"ProductSortKeys\");\n variables.__defaultOperation__.reverse = client.variable(\"reverse\", \"Boolean\");\n spreads.VariantFragment = document.defineFragment(\"VariantFragment\", \"ProductVariant\", function (root) {\n root.add(\"id\");\n root.add(\"title\");\n root.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"weight\");\n root.add(\"availableForSale\", {\n alias: \"available\"\n });\n root.add(\"sku\");\n root.add(\"compareAtPrice\", function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"compareAtPrice\", {\n alias: \"compareAtPriceV2\"\n }, function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n image.add(\"width\");\n image.add(\"height\");\n });\n root.add(\"selectedOptions\", function (selectedOptions) {\n selectedOptions.add(\"name\");\n selectedOptions.add(\"value\");\n });\n root.add(\"unitPrice\", function (unitPrice) {\n unitPrice.add(\"amount\");\n unitPrice.add(\"currencyCode\");\n });\n root.add(\"unitPriceMeasurement\", function (unitPriceMeasurement) {\n unitPriceMeasurement.add(\"measuredType\");\n unitPriceMeasurement.add(\"quantityUnit\");\n unitPriceMeasurement.add(\"quantityValue\");\n unitPriceMeasurement.add(\"referenceUnit\");\n unitPriceMeasurement.add(\"referenceValue\");\n });\n });\n spreads.ProductFragment = document.defineFragment(\"ProductFragment\", \"Product\", function (root) {\n root.add(\"id\");\n root.add(\"availableForSale\");\n root.add(\"createdAt\");\n root.add(\"updatedAt\");\n root.add(\"descriptionHtml\");\n root.add(\"description\");\n root.add(\"handle\");\n root.add(\"productType\");\n root.add(\"title\");\n root.add(\"vendor\");\n root.add(\"publishedAt\");\n root.add(\"onlineStoreUrl\");\n root.add(\"options\", function (options) {\n options.add(\"name\");\n options.add(\"values\");\n });\n root.add(\"images\", {\n args: {\n first: 250\n }\n }, function (images) {\n images.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n images.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"id\");\n node.add(\"url\", {\n alias: \"src\"\n });\n node.add(\"altText\");\n node.add(\"width\");\n node.add(\"height\");\n });\n });\n });\n root.add(\"variants\", {\n args: {\n first: 250\n }\n }, function (variants) {\n variants.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n variants.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.VariantFragment);\n });\n });\n });\n });\n document.addQuery([variables.__defaultOperation__.first, variables.__defaultOperation__.query, variables.__defaultOperation__.sortKey, variables.__defaultOperation__.reverse], function (root) {\n root.add(\"products\", {\n args: {\n first: variables.__defaultOperation__.first,\n query: variables.__defaultOperation__.query,\n sortKey: variables.__defaultOperation__.sortKey,\n reverse: variables.__defaultOperation__.reverse\n }\n }, function (products) {\n products.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n products.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.ProductFragment);\n });\n });\n });\n });\n return document;\n}\n\nfunction query$3(client) {\n var document = client.document();\n var spreads = {};\n var variables = {};\n variables.__defaultOperation__ = {};\n variables.__defaultOperation__.handle = client.variable(\"handle\", \"String!\");\n spreads.VariantFragment = document.defineFragment(\"VariantFragment\", \"ProductVariant\", function (root) {\n root.add(\"id\");\n root.add(\"title\");\n root.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"weight\");\n root.add(\"availableForSale\", {\n alias: \"available\"\n });\n root.add(\"sku\");\n root.add(\"compareAtPrice\", function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"compareAtPrice\", {\n alias: \"compareAtPriceV2\"\n }, function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n image.add(\"width\");\n image.add(\"height\");\n });\n root.add(\"selectedOptions\", function (selectedOptions) {\n selectedOptions.add(\"name\");\n selectedOptions.add(\"value\");\n });\n root.add(\"unitPrice\", function (unitPrice) {\n unitPrice.add(\"amount\");\n unitPrice.add(\"currencyCode\");\n });\n root.add(\"unitPriceMeasurement\", function (unitPriceMeasurement) {\n unitPriceMeasurement.add(\"measuredType\");\n unitPriceMeasurement.add(\"quantityUnit\");\n unitPriceMeasurement.add(\"quantityValue\");\n unitPriceMeasurement.add(\"referenceUnit\");\n unitPriceMeasurement.add(\"referenceValue\");\n });\n });\n spreads.ProductFragment = document.defineFragment(\"ProductFragment\", \"Product\", function (root) {\n root.add(\"id\");\n root.add(\"availableForSale\");\n root.add(\"createdAt\");\n root.add(\"updatedAt\");\n root.add(\"descriptionHtml\");\n root.add(\"description\");\n root.add(\"handle\");\n root.add(\"productType\");\n root.add(\"title\");\n root.add(\"vendor\");\n root.add(\"publishedAt\");\n root.add(\"onlineStoreUrl\");\n root.add(\"options\", function (options) {\n options.add(\"name\");\n options.add(\"values\");\n });\n root.add(\"images\", {\n args: {\n first: 250\n }\n }, function (images) {\n images.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n images.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"id\");\n node.add(\"url\", {\n alias: \"src\"\n });\n node.add(\"altText\");\n node.add(\"width\");\n node.add(\"height\");\n });\n });\n });\n root.add(\"variants\", {\n args: {\n first: 250\n }\n }, function (variants) {\n variants.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n variants.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.VariantFragment);\n });\n });\n });\n });\n document.addQuery([variables.__defaultOperation__.handle], function (root) {\n root.add(\"productByHandle\", {\n args: {\n handle: variables.__defaultOperation__.handle\n }\n }, function (productByHandle) {\n productByHandle.addFragment(spreads.ProductFragment);\n });\n });\n return document;\n}\n\nfunction query$4(client) {\n var document = client.document();\n var spreads = {};\n var variables = {};\n variables.__defaultOperation__ = {};\n variables.__defaultOperation__.productId = client.variable(\"productId\", \"ID!\");\n spreads.VariantFragment = document.defineFragment(\"VariantFragment\", \"ProductVariant\", function (root) {\n root.add(\"id\");\n root.add(\"title\");\n root.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"weight\");\n root.add(\"availableForSale\", {\n alias: \"available\"\n });\n root.add(\"sku\");\n root.add(\"compareAtPrice\", function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"compareAtPrice\", {\n alias: \"compareAtPriceV2\"\n }, function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n image.add(\"width\");\n image.add(\"height\");\n });\n root.add(\"selectedOptions\", function (selectedOptions) {\n selectedOptions.add(\"name\");\n selectedOptions.add(\"value\");\n });\n root.add(\"unitPrice\", function (unitPrice) {\n unitPrice.add(\"amount\");\n unitPrice.add(\"currencyCode\");\n });\n root.add(\"unitPriceMeasurement\", function (unitPriceMeasurement) {\n unitPriceMeasurement.add(\"measuredType\");\n unitPriceMeasurement.add(\"quantityUnit\");\n unitPriceMeasurement.add(\"quantityValue\");\n unitPriceMeasurement.add(\"referenceUnit\");\n unitPriceMeasurement.add(\"referenceValue\");\n });\n });\n spreads.ProductFragment = document.defineFragment(\"ProductFragment\", \"Product\", function (root) {\n root.add(\"id\");\n root.add(\"availableForSale\");\n root.add(\"createdAt\");\n root.add(\"updatedAt\");\n root.add(\"descriptionHtml\");\n root.add(\"description\");\n root.add(\"handle\");\n root.add(\"productType\");\n root.add(\"title\");\n root.add(\"vendor\");\n root.add(\"publishedAt\");\n root.add(\"onlineStoreUrl\");\n root.add(\"options\", function (options) {\n options.add(\"name\");\n options.add(\"values\");\n });\n root.add(\"images\", {\n args: {\n first: 250\n }\n }, function (images) {\n images.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n images.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"id\");\n node.add(\"url\", {\n alias: \"src\"\n });\n node.add(\"altText\");\n node.add(\"width\");\n node.add(\"height\");\n });\n });\n });\n root.add(\"variants\", {\n args: {\n first: 250\n }\n }, function (variants) {\n variants.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n variants.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.VariantFragment);\n });\n });\n });\n });\n document.addQuery([variables.__defaultOperation__.productId], function (root) {\n root.add(\"productRecommendations\", {\n args: {\n productId: variables.__defaultOperation__.productId\n }\n }, function (productRecommendations) {\n productRecommendations.addFragment(spreads.ProductFragment);\n });\n });\n return document;\n}\n\n// GraphQL\n/**\n * The JS Buy SDK product resource\n * @class\n */\n\nvar ProductResource = function (_Resource) {\n inherits$1(ProductResource, _Resource);\n\n function ProductResource() {\n classCallCheck$1(this, ProductResource);\n return possibleConstructorReturn$1(this, (ProductResource.__proto__ || Object.getPrototypeOf(ProductResource)).apply(this, arguments));\n }\n\n createClass$1(ProductResource, [{\n key: 'fetchAll',\n\n\n /**\n * Fetches all products on the shop.\n *\n * @example\n * client.product.fetchAll().then((products) => {\n * // Do something with the products\n * });\n *\n * @param {Int} [pageSize] The number of products to fetch per page\n * @return {Promise|GraphModel[]} A promise resolving with an array of `GraphModel`s of the products.\n */\n value: function fetchAll() {\n var first = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 20;\n\n return this.graphQLClient.send(query$2, { first: first }).then(defaultResolver('products')).then(paginateProductConnectionsAndResolve(this.graphQLClient));\n }\n\n /**\n * Fetches a single product by ID on the shop.\n *\n * @example\n * client.product.fetch('Xk9lM2JkNzFmNzIQ4NTIY4ZDFi9DaGVja291dC9lM2JkN==').then((product) => {\n * // Do something with the product\n * });\n *\n * @param {String} id The id of the product to fetch.\n * @return {Promise|GraphModel} A promise resolving with a `GraphModel` of the product.\n */\n\n }, {\n key: 'fetch',\n value: function fetch(id) {\n return this.graphQLClient.send(query, { id: id }).then(defaultResolver('node')).then(paginateProductConnectionsAndResolve(this.graphQLClient));\n }\n\n /**\n * Fetches multiple products by ID on the shop.\n *\n * @example\n * const ids = ['Xk9lM2JkNzFmNzIQ4NTIY4ZDFi9DaGVja291dC9lM2JkN==', 'Z2lkOi8vc2hvcGlmeS9Qcm9kdWN0Lzc4NTc5ODkzODQ='];\n * client.product.fetchMultiple(ids).then((products) => {\n * // Do something with the products\n * });\n *\n * @param {String[]} ids The ids of the products to fetch\n * @return {Promise|GraphModel[]} A promise resolving with a `GraphModel` of the product.\n */\n\n }, {\n key: 'fetchMultiple',\n value: function fetchMultiple(ids) {\n return this.graphQLClient.send(query$1, { ids: ids }).then(defaultResolver('nodes')).then(paginateProductConnectionsAndResolve(this.graphQLClient));\n }\n\n /**\n * Fetches a single product by handle on the shop.\n *\n * @example\n * client.product.fetchByHandle('my-product').then((product) => {\n * // Do something with the product\n * });\n *\n * @param {String} handle The handle of the product to fetch.\n * @return {Promise|GraphModel} A promise resolving with a `GraphModel` of the product.\n */\n\n }, {\n key: 'fetchByHandle',\n value: function fetchByHandle(handle) {\n return this.graphQLClient.send(query$3, { handle: handle }).then(defaultResolver('productByHandle')).then(paginateProductConnectionsAndResolve(this.graphQLClient));\n }\n\n /**\n * Fetches all products on the shop that match the query.\n *\n * @example\n * client.product.fetchQuery({first: 20, sortKey: 'CREATED_AT', reverse: true}).then((products) => {\n * // Do something with the first 10 products sorted by title in ascending order\n * });\n *\n * @param {Object} [args] An object specifying the query data containing zero or more of:\n * @param {Int} [args.first=20] The relay `first` param. This specifies page size.\n * @param {String} [args.sortKey=ID] The key to sort results by. Available values are\n * documented as {@link https://help.shopify.com/api/storefront-api/reference/enum/productsortkeys|Product Sort Keys}.\n * @param {String} [args.query] A query string. See full documentation {@link https://help.shopify.com/api/storefront-api/reference/object/shop#products|here}\n * @param {Boolean} [args.reverse] Whether or not to reverse the sort order of the results\n * @return {Promise|GraphModel[]} A promise resolving with an array of `GraphModel`s of the products.\n */\n\n }, {\n key: 'fetchQuery',\n value: function fetchQuery() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref$first = _ref.first,\n first = _ref$first === undefined ? 20 : _ref$first,\n _ref$sortKey = _ref.sortKey,\n sortKey = _ref$sortKey === undefined ? 'ID' : _ref$sortKey,\n query$$1 = _ref.query,\n reverse = _ref.reverse;\n\n return this.graphQLClient.send(query$2, {\n first: first,\n sortKey: sortKey,\n query: query$$1,\n reverse: reverse\n }).then(defaultResolver('products')).then(paginateProductConnectionsAndResolve(this.graphQLClient));\n }\n\n /**\n * Find recommended products related to a given productId.\n * To learn more about how recommendations are generated, see https://shopify.dev/themes/product-merchandising/recommendations.\n *\n * @example\n * const productId 'Xk9lM2JkNzFmNzIQ4NTIY4ZDFi9DaGVja291dC9lM2JkN==';\n * client.product.fetchProductRecommendations(productId).then((products) => {\n * // Do something with the products\n * });\n *\n * @param {String} productId The id of the product to fetch.\n * @return {Promise|GraphModel[]} A promise resolving with an array of `GraphModel`s of the products.\n */\n\n }, {\n key: 'fetchRecommendations',\n value: function fetchRecommendations(productId) {\n return this.graphQLClient.send(query$4, { productId: productId }).then(defaultResolver('productRecommendations')).then(paginateProductConnectionsAndResolve(this.graphQLClient));\n }\n }, {\n key: 'helpers',\n get: function get$$1() {\n return productHelpers;\n }\n }]);\n return ProductResource;\n}(Resource);\n\nfunction query$5(client) {\n var document = client.document();\n var spreads = {};\n var variables = {};\n variables.__defaultOperation__ = {};\n variables.__defaultOperation__.id = client.variable(\"id\", \"ID!\");\n spreads.CollectionFragment = document.defineFragment(\"CollectionFragment\", \"Collection\", function (root) {\n root.add(\"id\");\n root.add(\"handle\");\n root.add(\"description\");\n root.add(\"descriptionHtml\");\n root.add(\"updatedAt\");\n root.add(\"title\");\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n });\n });\n document.addQuery([variables.__defaultOperation__.id], function (root) {\n root.add(\"node\", {\n args: {\n id: variables.__defaultOperation__.id\n }\n }, function (node) {\n node.addFragment(spreads.CollectionFragment);\n });\n });\n return document;\n}\n\nfunction query$6(client) {\n var document = client.document();\n var spreads = {};\n var variables = {};\n variables.__defaultOperation__ = {};\n variables.__defaultOperation__.id = client.variable(\"id\", \"ID!\");\n variables.__defaultOperation__.productsFirst = client.variable(\"productsFirst\", \"Int!\");\n spreads.VariantFragment = document.defineFragment(\"VariantFragment\", \"ProductVariant\", function (root) {\n root.add(\"id\");\n root.add(\"title\");\n root.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"weight\");\n root.add(\"availableForSale\", {\n alias: \"available\"\n });\n root.add(\"sku\");\n root.add(\"compareAtPrice\", function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"compareAtPrice\", {\n alias: \"compareAtPriceV2\"\n }, function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n image.add(\"width\");\n image.add(\"height\");\n });\n root.add(\"selectedOptions\", function (selectedOptions) {\n selectedOptions.add(\"name\");\n selectedOptions.add(\"value\");\n });\n root.add(\"unitPrice\", function (unitPrice) {\n unitPrice.add(\"amount\");\n unitPrice.add(\"currencyCode\");\n });\n root.add(\"unitPriceMeasurement\", function (unitPriceMeasurement) {\n unitPriceMeasurement.add(\"measuredType\");\n unitPriceMeasurement.add(\"quantityUnit\");\n unitPriceMeasurement.add(\"quantityValue\");\n unitPriceMeasurement.add(\"referenceUnit\");\n unitPriceMeasurement.add(\"referenceValue\");\n });\n });\n spreads.CollectionFragment = document.defineFragment(\"CollectionFragment\", \"Collection\", function (root) {\n root.add(\"id\");\n root.add(\"handle\");\n root.add(\"description\");\n root.add(\"descriptionHtml\");\n root.add(\"updatedAt\");\n root.add(\"title\");\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n });\n });\n spreads.ProductFragment = document.defineFragment(\"ProductFragment\", \"Product\", function (root) {\n root.add(\"id\");\n root.add(\"availableForSale\");\n root.add(\"createdAt\");\n root.add(\"updatedAt\");\n root.add(\"descriptionHtml\");\n root.add(\"description\");\n root.add(\"handle\");\n root.add(\"productType\");\n root.add(\"title\");\n root.add(\"vendor\");\n root.add(\"publishedAt\");\n root.add(\"onlineStoreUrl\");\n root.add(\"options\", function (options) {\n options.add(\"name\");\n options.add(\"values\");\n });\n root.add(\"images\", {\n args: {\n first: 250\n }\n }, function (images) {\n images.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n images.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"id\");\n node.add(\"url\", {\n alias: \"src\"\n });\n node.add(\"altText\");\n node.add(\"width\");\n node.add(\"height\");\n });\n });\n });\n root.add(\"variants\", {\n args: {\n first: 250\n }\n }, function (variants) {\n variants.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n variants.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.VariantFragment);\n });\n });\n });\n });\n document.addQuery([variables.__defaultOperation__.id, variables.__defaultOperation__.productsFirst], function (root) {\n root.add(\"node\", {\n args: {\n id: variables.__defaultOperation__.id\n }\n }, function (node) {\n node.addFragment(spreads.CollectionFragment);\n node.addInlineFragmentOn(\"Collection\", function (Collection) {\n Collection.add(\"products\", {\n args: {\n first: variables.__defaultOperation__.productsFirst\n }\n }, function (products) {\n products.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n products.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.ProductFragment);\n });\n });\n });\n });\n });\n });\n return document;\n}\n\nfunction query$7(client) {\n var document = client.document();\n var spreads = {};\n var variables = {};\n variables.__defaultOperation__ = {};\n variables.__defaultOperation__.first = client.variable(\"first\", \"Int!\");\n variables.__defaultOperation__.query = client.variable(\"query\", \"String\");\n variables.__defaultOperation__.sortKey = client.variable(\"sortKey\", \"CollectionSortKeys\");\n variables.__defaultOperation__.reverse = client.variable(\"reverse\", \"Boolean\");\n spreads.CollectionFragment = document.defineFragment(\"CollectionFragment\", \"Collection\", function (root) {\n root.add(\"id\");\n root.add(\"handle\");\n root.add(\"description\");\n root.add(\"descriptionHtml\");\n root.add(\"updatedAt\");\n root.add(\"title\");\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n });\n });\n document.addQuery([variables.__defaultOperation__.first, variables.__defaultOperation__.query, variables.__defaultOperation__.sortKey, variables.__defaultOperation__.reverse], function (root) {\n root.add(\"collections\", {\n args: {\n first: variables.__defaultOperation__.first,\n query: variables.__defaultOperation__.query,\n sortKey: variables.__defaultOperation__.sortKey,\n reverse: variables.__defaultOperation__.reverse\n }\n }, function (collections) {\n collections.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n collections.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.CollectionFragment);\n });\n });\n });\n });\n return document;\n}\n\nfunction query$8(client) {\n var document = client.document();\n var spreads = {};\n var variables = {};\n variables.__defaultOperation__ = {};\n variables.__defaultOperation__.first = client.variable(\"first\", \"Int!\");\n variables.__defaultOperation__.query = client.variable(\"query\", \"String\");\n variables.__defaultOperation__.sortKey = client.variable(\"sortKey\", \"CollectionSortKeys\");\n variables.__defaultOperation__.reverse = client.variable(\"reverse\", \"Boolean\");\n variables.__defaultOperation__.productsFirst = client.variable(\"productsFirst\", \"Int!\");\n spreads.VariantFragment = document.defineFragment(\"VariantFragment\", \"ProductVariant\", function (root) {\n root.add(\"id\");\n root.add(\"title\");\n root.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"weight\");\n root.add(\"availableForSale\", {\n alias: \"available\"\n });\n root.add(\"sku\");\n root.add(\"compareAtPrice\", function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"compareAtPrice\", {\n alias: \"compareAtPriceV2\"\n }, function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n image.add(\"width\");\n image.add(\"height\");\n });\n root.add(\"selectedOptions\", function (selectedOptions) {\n selectedOptions.add(\"name\");\n selectedOptions.add(\"value\");\n });\n root.add(\"unitPrice\", function (unitPrice) {\n unitPrice.add(\"amount\");\n unitPrice.add(\"currencyCode\");\n });\n root.add(\"unitPriceMeasurement\", function (unitPriceMeasurement) {\n unitPriceMeasurement.add(\"measuredType\");\n unitPriceMeasurement.add(\"quantityUnit\");\n unitPriceMeasurement.add(\"quantityValue\");\n unitPriceMeasurement.add(\"referenceUnit\");\n unitPriceMeasurement.add(\"referenceValue\");\n });\n });\n spreads.CollectionFragment = document.defineFragment(\"CollectionFragment\", \"Collection\", function (root) {\n root.add(\"id\");\n root.add(\"handle\");\n root.add(\"description\");\n root.add(\"descriptionHtml\");\n root.add(\"updatedAt\");\n root.add(\"title\");\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n });\n });\n spreads.ProductFragment = document.defineFragment(\"ProductFragment\", \"Product\", function (root) {\n root.add(\"id\");\n root.add(\"availableForSale\");\n root.add(\"createdAt\");\n root.add(\"updatedAt\");\n root.add(\"descriptionHtml\");\n root.add(\"description\");\n root.add(\"handle\");\n root.add(\"productType\");\n root.add(\"title\");\n root.add(\"vendor\");\n root.add(\"publishedAt\");\n root.add(\"onlineStoreUrl\");\n root.add(\"options\", function (options) {\n options.add(\"name\");\n options.add(\"values\");\n });\n root.add(\"images\", {\n args: {\n first: 250\n }\n }, function (images) {\n images.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n images.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"id\");\n node.add(\"url\", {\n alias: \"src\"\n });\n node.add(\"altText\");\n node.add(\"width\");\n node.add(\"height\");\n });\n });\n });\n root.add(\"variants\", {\n args: {\n first: 250\n }\n }, function (variants) {\n variants.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n variants.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.VariantFragment);\n });\n });\n });\n });\n document.addQuery([variables.__defaultOperation__.first, variables.__defaultOperation__.query, variables.__defaultOperation__.sortKey, variables.__defaultOperation__.reverse, variables.__defaultOperation__.productsFirst], function (root) {\n root.add(\"collections\", {\n args: {\n first: variables.__defaultOperation__.first,\n query: variables.__defaultOperation__.query,\n sortKey: variables.__defaultOperation__.sortKey,\n reverse: variables.__defaultOperation__.reverse\n }\n }, function (collections) {\n collections.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n collections.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.CollectionFragment);\n node.add(\"products\", {\n args: {\n first: variables.__defaultOperation__.productsFirst\n }\n }, function (products) {\n products.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n products.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.ProductFragment);\n });\n });\n });\n });\n });\n });\n });\n return document;\n}\n\nfunction query$9(client) {\n var document = client.document();\n var spreads = {};\n var variables = {};\n variables.__defaultOperation__ = {};\n variables.__defaultOperation__.handle = client.variable(\"handle\", \"String!\");\n spreads.VariantFragment = document.defineFragment(\"VariantFragment\", \"ProductVariant\", function (root) {\n root.add(\"id\");\n root.add(\"title\");\n root.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"weight\");\n root.add(\"availableForSale\", {\n alias: \"available\"\n });\n root.add(\"sku\");\n root.add(\"compareAtPrice\", function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"compareAtPrice\", {\n alias: \"compareAtPriceV2\"\n }, function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n image.add(\"width\");\n image.add(\"height\");\n });\n root.add(\"selectedOptions\", function (selectedOptions) {\n selectedOptions.add(\"name\");\n selectedOptions.add(\"value\");\n });\n root.add(\"unitPrice\", function (unitPrice) {\n unitPrice.add(\"amount\");\n unitPrice.add(\"currencyCode\");\n });\n root.add(\"unitPriceMeasurement\", function (unitPriceMeasurement) {\n unitPriceMeasurement.add(\"measuredType\");\n unitPriceMeasurement.add(\"quantityUnit\");\n unitPriceMeasurement.add(\"quantityValue\");\n unitPriceMeasurement.add(\"referenceUnit\");\n unitPriceMeasurement.add(\"referenceValue\");\n });\n });\n spreads.ProductFragment = document.defineFragment(\"ProductFragment\", \"Product\", function (root) {\n root.add(\"id\");\n root.add(\"availableForSale\");\n root.add(\"createdAt\");\n root.add(\"updatedAt\");\n root.add(\"descriptionHtml\");\n root.add(\"description\");\n root.add(\"handle\");\n root.add(\"productType\");\n root.add(\"title\");\n root.add(\"vendor\");\n root.add(\"publishedAt\");\n root.add(\"onlineStoreUrl\");\n root.add(\"options\", function (options) {\n options.add(\"name\");\n options.add(\"values\");\n });\n root.add(\"images\", {\n args: {\n first: 250\n }\n }, function (images) {\n images.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n images.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"id\");\n node.add(\"url\", {\n alias: \"src\"\n });\n node.add(\"altText\");\n node.add(\"width\");\n node.add(\"height\");\n });\n });\n });\n root.add(\"variants\", {\n args: {\n first: 250\n }\n }, function (variants) {\n variants.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n variants.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.VariantFragment);\n });\n });\n });\n });\n spreads.CollectionFragment = document.defineFragment(\"CollectionFragment\", \"Collection\", function (root) {\n root.add(\"id\");\n root.add(\"handle\");\n root.add(\"description\");\n root.add(\"descriptionHtml\");\n root.add(\"updatedAt\");\n root.add(\"title\");\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n });\n });\n spreads.CollectionsProductsFragment = document.defineFragment(\"CollectionsProductsFragment\", \"Collection\", function (root) {\n root.add(\"products\", {\n args: {\n first: 20\n }\n }, function (products) {\n products.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n products.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.ProductFragment);\n });\n });\n });\n });\n document.addQuery([variables.__defaultOperation__.handle], function (root) {\n root.add(\"collectionByHandle\", {\n args: {\n handle: variables.__defaultOperation__.handle\n }\n }, function (collectionByHandle) {\n collectionByHandle.addFragment(spreads.CollectionFragment);\n collectionByHandle.addFragment(spreads.CollectionsProductsFragment);\n });\n });\n return document;\n}\n\n// GraphQL\n/**\n * The JS Buy SDK collection resource\n * @class\n */\n\nvar CollectionResource = function (_Resource) {\n inherits$1(CollectionResource, _Resource);\n\n function CollectionResource() {\n classCallCheck$1(this, CollectionResource);\n return possibleConstructorReturn$1(this, (CollectionResource.__proto__ || Object.getPrototypeOf(CollectionResource)).apply(this, arguments));\n }\n\n createClass$1(CollectionResource, [{\n key: 'fetchAll',\n\n\n /**\n * Fetches all collections on the shop, not including products.\n * To fetch collections with products use [fetchAllsWithProducts]{@link Client#fetchAllsWithProducts}.\n *\n * @example\n * client.collection.fetchAll().then((collections) => {\n * // Do something with the collections\n * });\n *\n * @return {Promise|GraphModel[]} A promise resolving with an array of `GraphModel`s of the collections.\n */\n value: function fetchAll() {\n var first = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 20;\n\n return this.graphQLClient.send(query$7, { first: first }).then(defaultResolver('collections'));\n }\n\n /**\n * Fetches all collections on the shop, including products.\n *\n * @example\n * client.collection.fetchAllWithProducts().then((collections) => {\n * // Do something with the collections\n * });\n *\n * @return {Promise|GraphModel[]} A promise resolving with an array of `GraphModel`s of the collections.\n */\n\n }, {\n key: 'fetchAllWithProducts',\n value: function fetchAllWithProducts() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref$first = _ref.first,\n first = _ref$first === undefined ? 20 : _ref$first,\n _ref$productsFirst = _ref.productsFirst,\n productsFirst = _ref$productsFirst === undefined ? 20 : _ref$productsFirst;\n\n return this.graphQLClient.send(query$8, { first: first, productsFirst: productsFirst }).then(defaultResolver('collections')).then(paginateCollectionsProductConnectionsAndResolve(this.graphQLClient));\n }\n\n /**\n * Fetches a single collection by ID on the shop, not including products.\n * To fetch the collection with products use [fetchWithProducts]{@link Client#fetchWithProducts}.\n *\n * @example\n * client.collection.fetch('Xk9lM2JkNzFmNzIQ4NTIY4ZDFiZTUyZTUwNTE2MDNhZjg==').then((collection) => {\n * // Do something with the collection\n * });\n *\n * @param {String} id The id of the collection to fetch.\n * @return {Promise|GraphModel} A promise resolving with a `GraphModel` of the collection.\n */\n\n }, {\n key: 'fetch',\n value: function fetch(id) {\n return this.graphQLClient.send(query$5, { id: id }).then(defaultResolver('node'));\n }\n\n /**\n * Fetches a single collection by ID on the shop, including products.\n *\n * @example\n * client.collection.fetchWithProducts('Xk9lM2JkNzFmNzIQ4NTIY4ZDFiZTUyZTUwNTE2MDNhZjg==').then((collection) => {\n * // Do something with the collection\n * });\n *\n * @param {String} id The id of the collection to fetch.\n * @return {Promise|GraphModel} A promise resolving with a `GraphModel` of the collection.\n */\n\n }, {\n key: 'fetchWithProducts',\n value: function fetchWithProducts(id) {\n var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref2$productsFirst = _ref2.productsFirst,\n productsFirst = _ref2$productsFirst === undefined ? 20 : _ref2$productsFirst;\n\n return this.graphQLClient.send(query$6, { id: id, productsFirst: productsFirst }).then(defaultResolver('node')).then(paginateCollectionsProductConnectionsAndResolve(this.graphQLClient));\n }\n\n /**\n * Fetches a collection by handle on the shop.\n *\n * @example\n * client.collection.fetchByHandle('my-collection').then((collection) => {\n * // Do something with the collection\n * });\n *\n * @param {String} handle The handle of the collection to fetch.\n * @return {Promise|GraphModel} A promise resolving with a `GraphModel` of the collection.\n */\n\n }, {\n key: 'fetchByHandle',\n value: function fetchByHandle(handle) {\n return this.graphQLClient.send(query$9, { handle: handle }).then(defaultResolver('collectionByHandle'));\n }\n\n /**\n * Fetches all collections on the shop that match the query.\n *\n * @example\n * client.collection.fetchQuery({first: 20, sortKey: 'CREATED_AT', reverse: true}).then((collections) => {\n * // Do something with the first 10 collections sorted by title in ascending order\n * });\n *\n * @param {Object} [args] An object specifying the query data containing zero or more of:\n * @param {Int} [args.first=20] The relay `first` param. This specifies page size.\n * @param {String} [args.sortKey=ID] The key to sort results by. Available values are\n * documented as {@link https://help.shopify.com/api/storefront-api/reference/enum/collectionsortkeys|Collection Sort Keys}.\n * @param {String} [args.query] A query string. See full documentation {@link https://help.shopify.com/api/storefront-api/reference/object/shop#collections|here}\n * @param {Boolean} [args.reverse] Whether or not to reverse the sort order of the results\n * @return {Promise|GraphModel[]} A promise resolving with an array of `GraphModel`s of the collections.\n */\n\n }, {\n key: 'fetchQuery',\n value: function fetchQuery() {\n var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref3$first = _ref3.first,\n first = _ref3$first === undefined ? 20 : _ref3$first,\n _ref3$sortKey = _ref3.sortKey,\n sortKey = _ref3$sortKey === undefined ? 'ID' : _ref3$sortKey,\n query = _ref3.query,\n reverse = _ref3.reverse;\n\n return this.graphQLClient.send(query$7, {\n first: first,\n sortKey: sortKey,\n query: query,\n reverse: reverse\n }).then(defaultResolver('collections'));\n }\n }]);\n return CollectionResource;\n}(Resource);\n\nfunction query$10(client) {\n var document = client.document();\n document.addQuery(function (root) {\n root.add(\"shop\", function (shop) {\n shop.add(\"paymentSettings\", function (paymentSettings) {\n paymentSettings.add(\"enabledPresentmentCurrencies\");\n });\n shop.add(\"description\");\n shop.add(\"moneyFormat\");\n shop.add(\"name\");\n shop.add(\"primaryDomain\", function (primaryDomain) {\n primaryDomain.add(\"host\");\n primaryDomain.add(\"sslEnabled\");\n primaryDomain.add(\"url\");\n });\n });\n });\n return document;\n}\n\nfunction query$11(client) {\n var document = client.document();\n var spreads = {};\n spreads.PolicyFragment = document.defineFragment(\"PolicyFragment\", \"ShopPolicy\", function (root) {\n root.add(\"id\");\n root.add(\"title\");\n root.add(\"url\");\n root.add(\"body\");\n });\n document.addQuery(function (root) {\n root.add(\"shop\", function (shop) {\n shop.add(\"privacyPolicy\", function (privacyPolicy) {\n privacyPolicy.addFragment(spreads.PolicyFragment);\n });\n shop.add(\"termsOfService\", function (termsOfService) {\n termsOfService.addFragment(spreads.PolicyFragment);\n });\n shop.add(\"refundPolicy\", function (refundPolicy) {\n refundPolicy.addFragment(spreads.PolicyFragment);\n });\n });\n });\n return document;\n}\n\n// GraphQL\n/**\n * The JS Buy SDK shop resource\n * @class\n */\n\nvar ShopResource = function (_Resource) {\n inherits$1(ShopResource, _Resource);\n\n function ShopResource() {\n classCallCheck$1(this, ShopResource);\n return possibleConstructorReturn$1(this, (ShopResource.__proto__ || Object.getPrototypeOf(ShopResource)).apply(this, arguments));\n }\n\n createClass$1(ShopResource, [{\n key: 'fetchInfo',\n\n\n /**\n * Fetches shop information (`currencyCode`, `description`, `moneyFormat`, `name`, and `primaryDomain`).\n * See the {@link https://help.shopify.com/api/storefront-api/reference/object/shop|Storefront API reference} for more information.\n *\n * @example\n * client.shop.fetchInfo().then((shop) => {\n * // Do something with the shop\n * });\n *\n * @return {Promise|GraphModel} A promise resolving with a `GraphModel` of the shop.\n */\n value: function fetchInfo() {\n return this.graphQLClient.send(query$10).then(defaultResolver('shop'));\n }\n\n /**\n * Fetches shop policies (privacy policy, terms of service and refund policy).\n *\n * @example\n * client.shop.fetchPolicies().then((shop) => {\n * // Do something with the shop\n * });\n *\n * @return {Promise|GraphModel} A promise resolving with a `GraphModel` of the shop.\n */\n\n }, {\n key: 'fetchPolicies',\n value: function fetchPolicies() {\n return this.graphQLClient.send(query$11).then(defaultResolver('shop'));\n }\n }]);\n return ShopResource;\n}(Resource);\n\nfunction handleCheckoutMutation(mutationRootKey, client) {\n return function (_ref) {\n var _ref$data = _ref.data,\n data = _ref$data === undefined ? {} : _ref$data,\n errors = _ref.errors,\n _ref$model = _ref.model,\n model = _ref$model === undefined ? {} : _ref$model;\n\n var rootData = data[mutationRootKey];\n var rootModel = model[mutationRootKey];\n\n if (rootData && rootData.checkout) {\n return client.fetchAllPages(rootModel.checkout.lineItems, { pageSize: 250 }).then(function (lineItems) {\n rootModel.checkout.attrs.lineItems = lineItems;\n rootModel.checkout.errors = errors;\n rootModel.checkout.userErrors = rootModel.userErrors;\n\n return rootModel.checkout;\n });\n }\n\n if (errors && errors.length) {\n return Promise.reject(new Error(JSON.stringify(errors)));\n }\n\n if (rootData && rootData.checkoutUserErrors && rootData.checkoutUserErrors.length) {\n return Promise.reject(new Error(JSON.stringify(rootData.checkoutUserErrors)));\n }\n\n if (rootData && rootData.userErrors && rootData.userErrors.length) {\n return Promise.reject(new Error(JSON.stringify(rootData.userErrors)));\n }\n\n return Promise.reject(new Error(\"The \" + mutationRootKey + \" mutation failed due to an unknown error.\"));\n };\n}\n\nfunction query$12(client) {\n var document = client.document();\n var spreads = {};\n var variables = {};\n variables.__defaultOperation__ = {};\n variables.__defaultOperation__.id = client.variable(\"id\", \"ID!\");\n spreads.VariantFragment = document.defineFragment(\"VariantFragment\", \"ProductVariant\", function (root) {\n root.add(\"id\");\n root.add(\"title\");\n root.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"weight\");\n root.add(\"availableForSale\", {\n alias: \"available\"\n });\n root.add(\"sku\");\n root.add(\"compareAtPrice\", function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"compareAtPrice\", {\n alias: \"compareAtPriceV2\"\n }, function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n image.add(\"width\");\n image.add(\"height\");\n });\n root.add(\"selectedOptions\", function (selectedOptions) {\n selectedOptions.add(\"name\");\n selectedOptions.add(\"value\");\n });\n root.add(\"unitPrice\", function (unitPrice) {\n unitPrice.add(\"amount\");\n unitPrice.add(\"currencyCode\");\n });\n root.add(\"unitPriceMeasurement\", function (unitPriceMeasurement) {\n unitPriceMeasurement.add(\"measuredType\");\n unitPriceMeasurement.add(\"quantityUnit\");\n unitPriceMeasurement.add(\"quantityValue\");\n unitPriceMeasurement.add(\"referenceUnit\");\n unitPriceMeasurement.add(\"referenceValue\");\n });\n });\n spreads.DiscountApplicationFragment = document.defineFragment(\"DiscountApplicationFragment\", \"DiscountApplication\", function (root) {\n root.add(\"targetSelection\");\n root.add(\"allocationMethod\");\n root.add(\"targetType\");\n root.add(\"value\", function (value) {\n value.addInlineFragmentOn(\"MoneyV2\", function (MoneyV2) {\n MoneyV2.add(\"amount\");\n MoneyV2.add(\"currencyCode\");\n });\n value.addInlineFragmentOn(\"PricingPercentageValue\", function (PricingPercentageValue) {\n PricingPercentageValue.add(\"percentage\");\n });\n });\n root.addInlineFragmentOn(\"ManualDiscountApplication\", function (ManualDiscountApplication) {\n ManualDiscountApplication.add(\"title\");\n ManualDiscountApplication.add(\"description\");\n });\n root.addInlineFragmentOn(\"DiscountCodeApplication\", function (DiscountCodeApplication) {\n DiscountCodeApplication.add(\"code\");\n DiscountCodeApplication.add(\"applicable\");\n });\n root.addInlineFragmentOn(\"ScriptDiscountApplication\", function (ScriptDiscountApplication) {\n ScriptDiscountApplication.add(\"title\");\n });\n root.addInlineFragmentOn(\"AutomaticDiscountApplication\", function (AutomaticDiscountApplication) {\n AutomaticDiscountApplication.add(\"title\");\n });\n });\n spreads.AppliedGiftCardFragment = document.defineFragment(\"AppliedGiftCardFragment\", \"AppliedGiftCard\", function (root) {\n root.add(\"amountUsed\", function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"amountUsed\", {\n alias: \"amountUsedV2\"\n }, function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"balance\", function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"balance\", {\n alias: \"balanceV2\"\n }, function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"presentmentAmountUsed\", function (presentmentAmountUsed) {\n presentmentAmountUsed.add(\"amount\");\n presentmentAmountUsed.add(\"currencyCode\");\n });\n root.add(\"id\");\n root.add(\"lastCharacters\");\n });\n spreads.VariantWithProductFragment = document.defineFragment(\"VariantWithProductFragment\", \"ProductVariant\", function (root) {\n root.addFragment(spreads.VariantFragment);\n root.add(\"product\", function (product) {\n product.add(\"id\");\n product.add(\"handle\");\n });\n });\n spreads.MailingAddressFragment = document.defineFragment(\"MailingAddressFragment\", \"MailingAddress\", function (root) {\n root.add(\"id\");\n root.add(\"address1\");\n root.add(\"address2\");\n root.add(\"city\");\n root.add(\"company\");\n root.add(\"country\");\n root.add(\"firstName\");\n root.add(\"formatted\");\n root.add(\"lastName\");\n root.add(\"latitude\");\n root.add(\"longitude\");\n root.add(\"phone\");\n root.add(\"province\");\n root.add(\"zip\");\n root.add(\"name\");\n root.add(\"countryCodeV2\", {\n alias: \"countryCode\"\n });\n root.add(\"provinceCode\");\n });\n spreads.CheckoutFragment = document.defineFragment(\"CheckoutFragment\", \"Checkout\", function (root) {\n root.add(\"id\");\n root.add(\"ready\");\n root.add(\"requiresShipping\");\n root.add(\"note\");\n root.add(\"paymentDue\", function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"paymentDue\", {\n alias: \"paymentDueV2\"\n }, function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"webUrl\");\n root.add(\"orderStatusUrl\");\n root.add(\"taxExempt\");\n root.add(\"taxesIncluded\");\n root.add(\"currencyCode\");\n root.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"lineItemsSubtotalPrice\", function (lineItemsSubtotalPrice) {\n lineItemsSubtotalPrice.add(\"amount\");\n lineItemsSubtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"completedAt\");\n root.add(\"createdAt\");\n root.add(\"updatedAt\");\n root.add(\"email\");\n root.add(\"discountApplications\", {\n args: {\n first: 10\n }\n }, function (discountApplications) {\n discountApplications.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n discountApplications.add(\"edges\", function (edges) {\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n root.add(\"appliedGiftCards\", function (appliedGiftCards) {\n appliedGiftCards.addFragment(spreads.AppliedGiftCardFragment);\n });\n root.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n root.add(\"shippingLine\", function (shippingLine) {\n shippingLine.add(\"handle\");\n shippingLine.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"title\");\n });\n root.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n root.add(\"order\", function (order) {\n order.add(\"id\");\n order.add(\"processedAt\");\n order.add(\"orderNumber\");\n order.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", {\n alias: \"totalShippingPriceV2\"\n }, function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"currencyCode\");\n order.add(\"totalRefunded\", function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"totalRefunded\", {\n alias: \"totalRefundedV2\"\n }, function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"customerUrl\");\n order.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n order.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n });\n });\n });\n });\n root.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"id\");\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n node.add(\"discountAllocations\", function (discountAllocations) {\n discountAllocations.add(\"allocatedAmount\", function (allocatedAmount) {\n allocatedAmount.add(\"amount\");\n allocatedAmount.add(\"currencyCode\");\n });\n discountAllocations.add(\"discountApplication\", function (discountApplication) {\n discountApplication.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n });\n });\n });\n document.addQuery([variables.__defaultOperation__.id], function (root) {\n root.add(\"node\", {\n args: {\n id: variables.__defaultOperation__.id\n }\n }, function (node) {\n node.addFragment(spreads.CheckoutFragment);\n });\n });\n return document;\n}\n\nfunction query$13(client) {\n var document = client.document();\n var spreads = {};\n var variables = {};\n variables.__defaultOperation__ = {};\n variables.__defaultOperation__.input = client.variable(\"input\", \"CheckoutCreateInput!\");\n spreads.VariantFragment = document.defineFragment(\"VariantFragment\", \"ProductVariant\", function (root) {\n root.add(\"id\");\n root.add(\"title\");\n root.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"weight\");\n root.add(\"availableForSale\", {\n alias: \"available\"\n });\n root.add(\"sku\");\n root.add(\"compareAtPrice\", function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"compareAtPrice\", {\n alias: \"compareAtPriceV2\"\n }, function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n image.add(\"width\");\n image.add(\"height\");\n });\n root.add(\"selectedOptions\", function (selectedOptions) {\n selectedOptions.add(\"name\");\n selectedOptions.add(\"value\");\n });\n root.add(\"unitPrice\", function (unitPrice) {\n unitPrice.add(\"amount\");\n unitPrice.add(\"currencyCode\");\n });\n root.add(\"unitPriceMeasurement\", function (unitPriceMeasurement) {\n unitPriceMeasurement.add(\"measuredType\");\n unitPriceMeasurement.add(\"quantityUnit\");\n unitPriceMeasurement.add(\"quantityValue\");\n unitPriceMeasurement.add(\"referenceUnit\");\n unitPriceMeasurement.add(\"referenceValue\");\n });\n });\n spreads.DiscountApplicationFragment = document.defineFragment(\"DiscountApplicationFragment\", \"DiscountApplication\", function (root) {\n root.add(\"targetSelection\");\n root.add(\"allocationMethod\");\n root.add(\"targetType\");\n root.add(\"value\", function (value) {\n value.addInlineFragmentOn(\"MoneyV2\", function (MoneyV2) {\n MoneyV2.add(\"amount\");\n MoneyV2.add(\"currencyCode\");\n });\n value.addInlineFragmentOn(\"PricingPercentageValue\", function (PricingPercentageValue) {\n PricingPercentageValue.add(\"percentage\");\n });\n });\n root.addInlineFragmentOn(\"ManualDiscountApplication\", function (ManualDiscountApplication) {\n ManualDiscountApplication.add(\"title\");\n ManualDiscountApplication.add(\"description\");\n });\n root.addInlineFragmentOn(\"DiscountCodeApplication\", function (DiscountCodeApplication) {\n DiscountCodeApplication.add(\"code\");\n DiscountCodeApplication.add(\"applicable\");\n });\n root.addInlineFragmentOn(\"ScriptDiscountApplication\", function (ScriptDiscountApplication) {\n ScriptDiscountApplication.add(\"title\");\n });\n root.addInlineFragmentOn(\"AutomaticDiscountApplication\", function (AutomaticDiscountApplication) {\n AutomaticDiscountApplication.add(\"title\");\n });\n });\n spreads.AppliedGiftCardFragment = document.defineFragment(\"AppliedGiftCardFragment\", \"AppliedGiftCard\", function (root) {\n root.add(\"amountUsed\", function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"amountUsed\", {\n alias: \"amountUsedV2\"\n }, function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"balance\", function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"balance\", {\n alias: \"balanceV2\"\n }, function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"presentmentAmountUsed\", function (presentmentAmountUsed) {\n presentmentAmountUsed.add(\"amount\");\n presentmentAmountUsed.add(\"currencyCode\");\n });\n root.add(\"id\");\n root.add(\"lastCharacters\");\n });\n spreads.VariantWithProductFragment = document.defineFragment(\"VariantWithProductFragment\", \"ProductVariant\", function (root) {\n root.addFragment(spreads.VariantFragment);\n root.add(\"product\", function (product) {\n product.add(\"id\");\n product.add(\"handle\");\n });\n });\n spreads.UserErrorFragment = document.defineFragment(\"UserErrorFragment\", \"UserError\", function (root) {\n root.add(\"field\");\n root.add(\"message\");\n });\n spreads.CheckoutUserErrorFragment = document.defineFragment(\"CheckoutUserErrorFragment\", \"CheckoutUserError\", function (root) {\n root.add(\"field\");\n root.add(\"message\");\n root.add(\"code\");\n });\n spreads.MailingAddressFragment = document.defineFragment(\"MailingAddressFragment\", \"MailingAddress\", function (root) {\n root.add(\"id\");\n root.add(\"address1\");\n root.add(\"address2\");\n root.add(\"city\");\n root.add(\"company\");\n root.add(\"country\");\n root.add(\"firstName\");\n root.add(\"formatted\");\n root.add(\"lastName\");\n root.add(\"latitude\");\n root.add(\"longitude\");\n root.add(\"phone\");\n root.add(\"province\");\n root.add(\"zip\");\n root.add(\"name\");\n root.add(\"countryCodeV2\", {\n alias: \"countryCode\"\n });\n root.add(\"provinceCode\");\n });\n spreads.CheckoutFragment = document.defineFragment(\"CheckoutFragment\", \"Checkout\", function (root) {\n root.add(\"id\");\n root.add(\"ready\");\n root.add(\"requiresShipping\");\n root.add(\"note\");\n root.add(\"paymentDue\", function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"paymentDue\", {\n alias: \"paymentDueV2\"\n }, function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"webUrl\");\n root.add(\"orderStatusUrl\");\n root.add(\"taxExempt\");\n root.add(\"taxesIncluded\");\n root.add(\"currencyCode\");\n root.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"lineItemsSubtotalPrice\", function (lineItemsSubtotalPrice) {\n lineItemsSubtotalPrice.add(\"amount\");\n lineItemsSubtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"completedAt\");\n root.add(\"createdAt\");\n root.add(\"updatedAt\");\n root.add(\"email\");\n root.add(\"discountApplications\", {\n args: {\n first: 10\n }\n }, function (discountApplications) {\n discountApplications.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n discountApplications.add(\"edges\", function (edges) {\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n root.add(\"appliedGiftCards\", function (appliedGiftCards) {\n appliedGiftCards.addFragment(spreads.AppliedGiftCardFragment);\n });\n root.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n root.add(\"shippingLine\", function (shippingLine) {\n shippingLine.add(\"handle\");\n shippingLine.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"title\");\n });\n root.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n root.add(\"order\", function (order) {\n order.add(\"id\");\n order.add(\"processedAt\");\n order.add(\"orderNumber\");\n order.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", {\n alias: \"totalShippingPriceV2\"\n }, function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"currencyCode\");\n order.add(\"totalRefunded\", function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"totalRefunded\", {\n alias: \"totalRefundedV2\"\n }, function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"customerUrl\");\n order.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n order.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n });\n });\n });\n });\n root.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"id\");\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n node.add(\"discountAllocations\", function (discountAllocations) {\n discountAllocations.add(\"allocatedAmount\", function (allocatedAmount) {\n allocatedAmount.add(\"amount\");\n allocatedAmount.add(\"currencyCode\");\n });\n discountAllocations.add(\"discountApplication\", function (discountApplication) {\n discountApplication.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n });\n });\n });\n document.addMutation([variables.__defaultOperation__.input], function (root) {\n root.add(\"checkoutCreate\", {\n args: {\n input: variables.__defaultOperation__.input\n }\n }, function (checkoutCreate) {\n checkoutCreate.add(\"userErrors\", function (userErrors) {\n userErrors.addFragment(spreads.UserErrorFragment);\n });\n checkoutCreate.add(\"checkoutUserErrors\", function (checkoutUserErrors) {\n checkoutUserErrors.addFragment(spreads.CheckoutUserErrorFragment);\n });\n checkoutCreate.add(\"checkout\", function (checkout) {\n checkout.addFragment(spreads.CheckoutFragment);\n });\n });\n });\n return document;\n}\n\nfunction query$14(client) {\n var document = client.document();\n var spreads = {};\n var variables = {};\n variables.__defaultOperation__ = {};\n variables.__defaultOperation__.checkoutId = client.variable(\"checkoutId\", \"ID!\");\n variables.__defaultOperation__.lineItems = client.variable(\"lineItems\", \"[CheckoutLineItemInput!]!\");\n spreads.VariantFragment = document.defineFragment(\"VariantFragment\", \"ProductVariant\", function (root) {\n root.add(\"id\");\n root.add(\"title\");\n root.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"weight\");\n root.add(\"availableForSale\", {\n alias: \"available\"\n });\n root.add(\"sku\");\n root.add(\"compareAtPrice\", function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"compareAtPrice\", {\n alias: \"compareAtPriceV2\"\n }, function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n image.add(\"width\");\n image.add(\"height\");\n });\n root.add(\"selectedOptions\", function (selectedOptions) {\n selectedOptions.add(\"name\");\n selectedOptions.add(\"value\");\n });\n root.add(\"unitPrice\", function (unitPrice) {\n unitPrice.add(\"amount\");\n unitPrice.add(\"currencyCode\");\n });\n root.add(\"unitPriceMeasurement\", function (unitPriceMeasurement) {\n unitPriceMeasurement.add(\"measuredType\");\n unitPriceMeasurement.add(\"quantityUnit\");\n unitPriceMeasurement.add(\"quantityValue\");\n unitPriceMeasurement.add(\"referenceUnit\");\n unitPriceMeasurement.add(\"referenceValue\");\n });\n });\n spreads.DiscountApplicationFragment = document.defineFragment(\"DiscountApplicationFragment\", \"DiscountApplication\", function (root) {\n root.add(\"targetSelection\");\n root.add(\"allocationMethod\");\n root.add(\"targetType\");\n root.add(\"value\", function (value) {\n value.addInlineFragmentOn(\"MoneyV2\", function (MoneyV2) {\n MoneyV2.add(\"amount\");\n MoneyV2.add(\"currencyCode\");\n });\n value.addInlineFragmentOn(\"PricingPercentageValue\", function (PricingPercentageValue) {\n PricingPercentageValue.add(\"percentage\");\n });\n });\n root.addInlineFragmentOn(\"ManualDiscountApplication\", function (ManualDiscountApplication) {\n ManualDiscountApplication.add(\"title\");\n ManualDiscountApplication.add(\"description\");\n });\n root.addInlineFragmentOn(\"DiscountCodeApplication\", function (DiscountCodeApplication) {\n DiscountCodeApplication.add(\"code\");\n DiscountCodeApplication.add(\"applicable\");\n });\n root.addInlineFragmentOn(\"ScriptDiscountApplication\", function (ScriptDiscountApplication) {\n ScriptDiscountApplication.add(\"title\");\n });\n root.addInlineFragmentOn(\"AutomaticDiscountApplication\", function (AutomaticDiscountApplication) {\n AutomaticDiscountApplication.add(\"title\");\n });\n });\n spreads.AppliedGiftCardFragment = document.defineFragment(\"AppliedGiftCardFragment\", \"AppliedGiftCard\", function (root) {\n root.add(\"amountUsed\", function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"amountUsed\", {\n alias: \"amountUsedV2\"\n }, function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"balance\", function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"balance\", {\n alias: \"balanceV2\"\n }, function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"presentmentAmountUsed\", function (presentmentAmountUsed) {\n presentmentAmountUsed.add(\"amount\");\n presentmentAmountUsed.add(\"currencyCode\");\n });\n root.add(\"id\");\n root.add(\"lastCharacters\");\n });\n spreads.VariantWithProductFragment = document.defineFragment(\"VariantWithProductFragment\", \"ProductVariant\", function (root) {\n root.addFragment(spreads.VariantFragment);\n root.add(\"product\", function (product) {\n product.add(\"id\");\n product.add(\"handle\");\n });\n });\n spreads.UserErrorFragment = document.defineFragment(\"UserErrorFragment\", \"UserError\", function (root) {\n root.add(\"field\");\n root.add(\"message\");\n });\n spreads.CheckoutUserErrorFragment = document.defineFragment(\"CheckoutUserErrorFragment\", \"CheckoutUserError\", function (root) {\n root.add(\"field\");\n root.add(\"message\");\n root.add(\"code\");\n });\n spreads.MailingAddressFragment = document.defineFragment(\"MailingAddressFragment\", \"MailingAddress\", function (root) {\n root.add(\"id\");\n root.add(\"address1\");\n root.add(\"address2\");\n root.add(\"city\");\n root.add(\"company\");\n root.add(\"country\");\n root.add(\"firstName\");\n root.add(\"formatted\");\n root.add(\"lastName\");\n root.add(\"latitude\");\n root.add(\"longitude\");\n root.add(\"phone\");\n root.add(\"province\");\n root.add(\"zip\");\n root.add(\"name\");\n root.add(\"countryCodeV2\", {\n alias: \"countryCode\"\n });\n root.add(\"provinceCode\");\n });\n spreads.CheckoutFragment = document.defineFragment(\"CheckoutFragment\", \"Checkout\", function (root) {\n root.add(\"id\");\n root.add(\"ready\");\n root.add(\"requiresShipping\");\n root.add(\"note\");\n root.add(\"paymentDue\", function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"paymentDue\", {\n alias: \"paymentDueV2\"\n }, function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"webUrl\");\n root.add(\"orderStatusUrl\");\n root.add(\"taxExempt\");\n root.add(\"taxesIncluded\");\n root.add(\"currencyCode\");\n root.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"lineItemsSubtotalPrice\", function (lineItemsSubtotalPrice) {\n lineItemsSubtotalPrice.add(\"amount\");\n lineItemsSubtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"completedAt\");\n root.add(\"createdAt\");\n root.add(\"updatedAt\");\n root.add(\"email\");\n root.add(\"discountApplications\", {\n args: {\n first: 10\n }\n }, function (discountApplications) {\n discountApplications.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n discountApplications.add(\"edges\", function (edges) {\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n root.add(\"appliedGiftCards\", function (appliedGiftCards) {\n appliedGiftCards.addFragment(spreads.AppliedGiftCardFragment);\n });\n root.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n root.add(\"shippingLine\", function (shippingLine) {\n shippingLine.add(\"handle\");\n shippingLine.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"title\");\n });\n root.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n root.add(\"order\", function (order) {\n order.add(\"id\");\n order.add(\"processedAt\");\n order.add(\"orderNumber\");\n order.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", {\n alias: \"totalShippingPriceV2\"\n }, function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"currencyCode\");\n order.add(\"totalRefunded\", function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"totalRefunded\", {\n alias: \"totalRefundedV2\"\n }, function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"customerUrl\");\n order.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n order.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n });\n });\n });\n });\n root.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"id\");\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n node.add(\"discountAllocations\", function (discountAllocations) {\n discountAllocations.add(\"allocatedAmount\", function (allocatedAmount) {\n allocatedAmount.add(\"amount\");\n allocatedAmount.add(\"currencyCode\");\n });\n discountAllocations.add(\"discountApplication\", function (discountApplication) {\n discountApplication.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n });\n });\n });\n document.addMutation([variables.__defaultOperation__.checkoutId, variables.__defaultOperation__.lineItems], function (root) {\n root.add(\"checkoutLineItemsAdd\", {\n args: {\n checkoutId: variables.__defaultOperation__.checkoutId,\n lineItems: variables.__defaultOperation__.lineItems\n }\n }, function (checkoutLineItemsAdd) {\n checkoutLineItemsAdd.add(\"userErrors\", function (userErrors) {\n userErrors.addFragment(spreads.UserErrorFragment);\n });\n checkoutLineItemsAdd.add(\"checkoutUserErrors\", function (checkoutUserErrors) {\n checkoutUserErrors.addFragment(spreads.CheckoutUserErrorFragment);\n });\n checkoutLineItemsAdd.add(\"checkout\", function (checkout) {\n checkout.addFragment(spreads.CheckoutFragment);\n });\n });\n });\n return document;\n}\n\nfunction query$15(client) {\n var document = client.document();\n var spreads = {};\n var variables = {};\n variables.__defaultOperation__ = {};\n variables.__defaultOperation__.checkoutId = client.variable(\"checkoutId\", \"ID!\");\n variables.__defaultOperation__.lineItemIds = client.variable(\"lineItemIds\", \"[ID!]!\");\n spreads.VariantFragment = document.defineFragment(\"VariantFragment\", \"ProductVariant\", function (root) {\n root.add(\"id\");\n root.add(\"title\");\n root.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"weight\");\n root.add(\"availableForSale\", {\n alias: \"available\"\n });\n root.add(\"sku\");\n root.add(\"compareAtPrice\", function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"compareAtPrice\", {\n alias: \"compareAtPriceV2\"\n }, function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n image.add(\"width\");\n image.add(\"height\");\n });\n root.add(\"selectedOptions\", function (selectedOptions) {\n selectedOptions.add(\"name\");\n selectedOptions.add(\"value\");\n });\n root.add(\"unitPrice\", function (unitPrice) {\n unitPrice.add(\"amount\");\n unitPrice.add(\"currencyCode\");\n });\n root.add(\"unitPriceMeasurement\", function (unitPriceMeasurement) {\n unitPriceMeasurement.add(\"measuredType\");\n unitPriceMeasurement.add(\"quantityUnit\");\n unitPriceMeasurement.add(\"quantityValue\");\n unitPriceMeasurement.add(\"referenceUnit\");\n unitPriceMeasurement.add(\"referenceValue\");\n });\n });\n spreads.DiscountApplicationFragment = document.defineFragment(\"DiscountApplicationFragment\", \"DiscountApplication\", function (root) {\n root.add(\"targetSelection\");\n root.add(\"allocationMethod\");\n root.add(\"targetType\");\n root.add(\"value\", function (value) {\n value.addInlineFragmentOn(\"MoneyV2\", function (MoneyV2) {\n MoneyV2.add(\"amount\");\n MoneyV2.add(\"currencyCode\");\n });\n value.addInlineFragmentOn(\"PricingPercentageValue\", function (PricingPercentageValue) {\n PricingPercentageValue.add(\"percentage\");\n });\n });\n root.addInlineFragmentOn(\"ManualDiscountApplication\", function (ManualDiscountApplication) {\n ManualDiscountApplication.add(\"title\");\n ManualDiscountApplication.add(\"description\");\n });\n root.addInlineFragmentOn(\"DiscountCodeApplication\", function (DiscountCodeApplication) {\n DiscountCodeApplication.add(\"code\");\n DiscountCodeApplication.add(\"applicable\");\n });\n root.addInlineFragmentOn(\"ScriptDiscountApplication\", function (ScriptDiscountApplication) {\n ScriptDiscountApplication.add(\"title\");\n });\n root.addInlineFragmentOn(\"AutomaticDiscountApplication\", function (AutomaticDiscountApplication) {\n AutomaticDiscountApplication.add(\"title\");\n });\n });\n spreads.AppliedGiftCardFragment = document.defineFragment(\"AppliedGiftCardFragment\", \"AppliedGiftCard\", function (root) {\n root.add(\"amountUsed\", function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"amountUsed\", {\n alias: \"amountUsedV2\"\n }, function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"balance\", function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"balance\", {\n alias: \"balanceV2\"\n }, function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"presentmentAmountUsed\", function (presentmentAmountUsed) {\n presentmentAmountUsed.add(\"amount\");\n presentmentAmountUsed.add(\"currencyCode\");\n });\n root.add(\"id\");\n root.add(\"lastCharacters\");\n });\n spreads.VariantWithProductFragment = document.defineFragment(\"VariantWithProductFragment\", \"ProductVariant\", function (root) {\n root.addFragment(spreads.VariantFragment);\n root.add(\"product\", function (product) {\n product.add(\"id\");\n product.add(\"handle\");\n });\n });\n spreads.UserErrorFragment = document.defineFragment(\"UserErrorFragment\", \"UserError\", function (root) {\n root.add(\"field\");\n root.add(\"message\");\n });\n spreads.CheckoutUserErrorFragment = document.defineFragment(\"CheckoutUserErrorFragment\", \"CheckoutUserError\", function (root) {\n root.add(\"field\");\n root.add(\"message\");\n root.add(\"code\");\n });\n spreads.MailingAddressFragment = document.defineFragment(\"MailingAddressFragment\", \"MailingAddress\", function (root) {\n root.add(\"id\");\n root.add(\"address1\");\n root.add(\"address2\");\n root.add(\"city\");\n root.add(\"company\");\n root.add(\"country\");\n root.add(\"firstName\");\n root.add(\"formatted\");\n root.add(\"lastName\");\n root.add(\"latitude\");\n root.add(\"longitude\");\n root.add(\"phone\");\n root.add(\"province\");\n root.add(\"zip\");\n root.add(\"name\");\n root.add(\"countryCodeV2\", {\n alias: \"countryCode\"\n });\n root.add(\"provinceCode\");\n });\n spreads.CheckoutFragment = document.defineFragment(\"CheckoutFragment\", \"Checkout\", function (root) {\n root.add(\"id\");\n root.add(\"ready\");\n root.add(\"requiresShipping\");\n root.add(\"note\");\n root.add(\"paymentDue\", function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"paymentDue\", {\n alias: \"paymentDueV2\"\n }, function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"webUrl\");\n root.add(\"orderStatusUrl\");\n root.add(\"taxExempt\");\n root.add(\"taxesIncluded\");\n root.add(\"currencyCode\");\n root.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"lineItemsSubtotalPrice\", function (lineItemsSubtotalPrice) {\n lineItemsSubtotalPrice.add(\"amount\");\n lineItemsSubtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"completedAt\");\n root.add(\"createdAt\");\n root.add(\"updatedAt\");\n root.add(\"email\");\n root.add(\"discountApplications\", {\n args: {\n first: 10\n }\n }, function (discountApplications) {\n discountApplications.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n discountApplications.add(\"edges\", function (edges) {\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n root.add(\"appliedGiftCards\", function (appliedGiftCards) {\n appliedGiftCards.addFragment(spreads.AppliedGiftCardFragment);\n });\n root.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n root.add(\"shippingLine\", function (shippingLine) {\n shippingLine.add(\"handle\");\n shippingLine.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"title\");\n });\n root.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n root.add(\"order\", function (order) {\n order.add(\"id\");\n order.add(\"processedAt\");\n order.add(\"orderNumber\");\n order.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", {\n alias: \"totalShippingPriceV2\"\n }, function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"currencyCode\");\n order.add(\"totalRefunded\", function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"totalRefunded\", {\n alias: \"totalRefundedV2\"\n }, function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"customerUrl\");\n order.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n order.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n });\n });\n });\n });\n root.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"id\");\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n node.add(\"discountAllocations\", function (discountAllocations) {\n discountAllocations.add(\"allocatedAmount\", function (allocatedAmount) {\n allocatedAmount.add(\"amount\");\n allocatedAmount.add(\"currencyCode\");\n });\n discountAllocations.add(\"discountApplication\", function (discountApplication) {\n discountApplication.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n });\n });\n });\n document.addMutation([variables.__defaultOperation__.checkoutId, variables.__defaultOperation__.lineItemIds], function (root) {\n root.add(\"checkoutLineItemsRemove\", {\n args: {\n checkoutId: variables.__defaultOperation__.checkoutId,\n lineItemIds: variables.__defaultOperation__.lineItemIds\n }\n }, function (checkoutLineItemsRemove) {\n checkoutLineItemsRemove.add(\"userErrors\", function (userErrors) {\n userErrors.addFragment(spreads.UserErrorFragment);\n });\n checkoutLineItemsRemove.add(\"checkoutUserErrors\", function (checkoutUserErrors) {\n checkoutUserErrors.addFragment(spreads.CheckoutUserErrorFragment);\n });\n checkoutLineItemsRemove.add(\"checkout\", function (checkout) {\n checkout.addFragment(spreads.CheckoutFragment);\n });\n });\n });\n return document;\n}\n\nfunction query$16(client) {\n var document = client.document();\n var spreads = {};\n var variables = {};\n variables.__defaultOperation__ = {};\n variables.__defaultOperation__.checkoutId = client.variable(\"checkoutId\", \"ID!\");\n variables.__defaultOperation__.lineItems = client.variable(\"lineItems\", \"[CheckoutLineItemInput!]!\");\n spreads.VariantFragment = document.defineFragment(\"VariantFragment\", \"ProductVariant\", function (root) {\n root.add(\"id\");\n root.add(\"title\");\n root.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"weight\");\n root.add(\"availableForSale\", {\n alias: \"available\"\n });\n root.add(\"sku\");\n root.add(\"compareAtPrice\", function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"compareAtPrice\", {\n alias: \"compareAtPriceV2\"\n }, function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n image.add(\"width\");\n image.add(\"height\");\n });\n root.add(\"selectedOptions\", function (selectedOptions) {\n selectedOptions.add(\"name\");\n selectedOptions.add(\"value\");\n });\n root.add(\"unitPrice\", function (unitPrice) {\n unitPrice.add(\"amount\");\n unitPrice.add(\"currencyCode\");\n });\n root.add(\"unitPriceMeasurement\", function (unitPriceMeasurement) {\n unitPriceMeasurement.add(\"measuredType\");\n unitPriceMeasurement.add(\"quantityUnit\");\n unitPriceMeasurement.add(\"quantityValue\");\n unitPriceMeasurement.add(\"referenceUnit\");\n unitPriceMeasurement.add(\"referenceValue\");\n });\n });\n spreads.DiscountApplicationFragment = document.defineFragment(\"DiscountApplicationFragment\", \"DiscountApplication\", function (root) {\n root.add(\"targetSelection\");\n root.add(\"allocationMethod\");\n root.add(\"targetType\");\n root.add(\"value\", function (value) {\n value.addInlineFragmentOn(\"MoneyV2\", function (MoneyV2) {\n MoneyV2.add(\"amount\");\n MoneyV2.add(\"currencyCode\");\n });\n value.addInlineFragmentOn(\"PricingPercentageValue\", function (PricingPercentageValue) {\n PricingPercentageValue.add(\"percentage\");\n });\n });\n root.addInlineFragmentOn(\"ManualDiscountApplication\", function (ManualDiscountApplication) {\n ManualDiscountApplication.add(\"title\");\n ManualDiscountApplication.add(\"description\");\n });\n root.addInlineFragmentOn(\"DiscountCodeApplication\", function (DiscountCodeApplication) {\n DiscountCodeApplication.add(\"code\");\n DiscountCodeApplication.add(\"applicable\");\n });\n root.addInlineFragmentOn(\"ScriptDiscountApplication\", function (ScriptDiscountApplication) {\n ScriptDiscountApplication.add(\"title\");\n });\n root.addInlineFragmentOn(\"AutomaticDiscountApplication\", function (AutomaticDiscountApplication) {\n AutomaticDiscountApplication.add(\"title\");\n });\n });\n spreads.AppliedGiftCardFragment = document.defineFragment(\"AppliedGiftCardFragment\", \"AppliedGiftCard\", function (root) {\n root.add(\"amountUsed\", function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"amountUsed\", {\n alias: \"amountUsedV2\"\n }, function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"balance\", function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"balance\", {\n alias: \"balanceV2\"\n }, function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"presentmentAmountUsed\", function (presentmentAmountUsed) {\n presentmentAmountUsed.add(\"amount\");\n presentmentAmountUsed.add(\"currencyCode\");\n });\n root.add(\"id\");\n root.add(\"lastCharacters\");\n });\n spreads.VariantWithProductFragment = document.defineFragment(\"VariantWithProductFragment\", \"ProductVariant\", function (root) {\n root.addFragment(spreads.VariantFragment);\n root.add(\"product\", function (product) {\n product.add(\"id\");\n product.add(\"handle\");\n });\n });\n spreads.CheckoutUserErrorFragment = document.defineFragment(\"CheckoutUserErrorFragment\", \"CheckoutUserError\", function (root) {\n root.add(\"field\");\n root.add(\"message\");\n root.add(\"code\");\n });\n spreads.MailingAddressFragment = document.defineFragment(\"MailingAddressFragment\", \"MailingAddress\", function (root) {\n root.add(\"id\");\n root.add(\"address1\");\n root.add(\"address2\");\n root.add(\"city\");\n root.add(\"company\");\n root.add(\"country\");\n root.add(\"firstName\");\n root.add(\"formatted\");\n root.add(\"lastName\");\n root.add(\"latitude\");\n root.add(\"longitude\");\n root.add(\"phone\");\n root.add(\"province\");\n root.add(\"zip\");\n root.add(\"name\");\n root.add(\"countryCodeV2\", {\n alias: \"countryCode\"\n });\n root.add(\"provinceCode\");\n });\n spreads.CheckoutFragment = document.defineFragment(\"CheckoutFragment\", \"Checkout\", function (root) {\n root.add(\"id\");\n root.add(\"ready\");\n root.add(\"requiresShipping\");\n root.add(\"note\");\n root.add(\"paymentDue\", function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"paymentDue\", {\n alias: \"paymentDueV2\"\n }, function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"webUrl\");\n root.add(\"orderStatusUrl\");\n root.add(\"taxExempt\");\n root.add(\"taxesIncluded\");\n root.add(\"currencyCode\");\n root.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"lineItemsSubtotalPrice\", function (lineItemsSubtotalPrice) {\n lineItemsSubtotalPrice.add(\"amount\");\n lineItemsSubtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"completedAt\");\n root.add(\"createdAt\");\n root.add(\"updatedAt\");\n root.add(\"email\");\n root.add(\"discountApplications\", {\n args: {\n first: 10\n }\n }, function (discountApplications) {\n discountApplications.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n discountApplications.add(\"edges\", function (edges) {\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n root.add(\"appliedGiftCards\", function (appliedGiftCards) {\n appliedGiftCards.addFragment(spreads.AppliedGiftCardFragment);\n });\n root.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n root.add(\"shippingLine\", function (shippingLine) {\n shippingLine.add(\"handle\");\n shippingLine.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"title\");\n });\n root.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n root.add(\"order\", function (order) {\n order.add(\"id\");\n order.add(\"processedAt\");\n order.add(\"orderNumber\");\n order.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", {\n alias: \"totalShippingPriceV2\"\n }, function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"currencyCode\");\n order.add(\"totalRefunded\", function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"totalRefunded\", {\n alias: \"totalRefundedV2\"\n }, function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"customerUrl\");\n order.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n order.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n });\n });\n });\n });\n root.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"id\");\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n node.add(\"discountAllocations\", function (discountAllocations) {\n discountAllocations.add(\"allocatedAmount\", function (allocatedAmount) {\n allocatedAmount.add(\"amount\");\n allocatedAmount.add(\"currencyCode\");\n });\n discountAllocations.add(\"discountApplication\", function (discountApplication) {\n discountApplication.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n });\n });\n });\n document.addMutation([variables.__defaultOperation__.checkoutId, variables.__defaultOperation__.lineItems], function (root) {\n root.add(\"checkoutLineItemsReplace\", {\n args: {\n checkoutId: variables.__defaultOperation__.checkoutId,\n lineItems: variables.__defaultOperation__.lineItems\n }\n }, function (checkoutLineItemsReplace) {\n checkoutLineItemsReplace.add(\"userErrors\", function (userErrors) {\n userErrors.addFragment(spreads.CheckoutUserErrorFragment);\n });\n checkoutLineItemsReplace.add(\"checkout\", function (checkout) {\n checkout.addFragment(spreads.CheckoutFragment);\n });\n });\n });\n return document;\n}\n\nfunction query$17(client) {\n var document = client.document();\n var spreads = {};\n var variables = {};\n variables.__defaultOperation__ = {};\n variables.__defaultOperation__.checkoutId = client.variable(\"checkoutId\", \"ID!\");\n variables.__defaultOperation__.lineItems = client.variable(\"lineItems\", \"[CheckoutLineItemUpdateInput!]!\");\n spreads.VariantFragment = document.defineFragment(\"VariantFragment\", \"ProductVariant\", function (root) {\n root.add(\"id\");\n root.add(\"title\");\n root.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"weight\");\n root.add(\"availableForSale\", {\n alias: \"available\"\n });\n root.add(\"sku\");\n root.add(\"compareAtPrice\", function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"compareAtPrice\", {\n alias: \"compareAtPriceV2\"\n }, function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n image.add(\"width\");\n image.add(\"height\");\n });\n root.add(\"selectedOptions\", function (selectedOptions) {\n selectedOptions.add(\"name\");\n selectedOptions.add(\"value\");\n });\n root.add(\"unitPrice\", function (unitPrice) {\n unitPrice.add(\"amount\");\n unitPrice.add(\"currencyCode\");\n });\n root.add(\"unitPriceMeasurement\", function (unitPriceMeasurement) {\n unitPriceMeasurement.add(\"measuredType\");\n unitPriceMeasurement.add(\"quantityUnit\");\n unitPriceMeasurement.add(\"quantityValue\");\n unitPriceMeasurement.add(\"referenceUnit\");\n unitPriceMeasurement.add(\"referenceValue\");\n });\n });\n spreads.DiscountApplicationFragment = document.defineFragment(\"DiscountApplicationFragment\", \"DiscountApplication\", function (root) {\n root.add(\"targetSelection\");\n root.add(\"allocationMethod\");\n root.add(\"targetType\");\n root.add(\"value\", function (value) {\n value.addInlineFragmentOn(\"MoneyV2\", function (MoneyV2) {\n MoneyV2.add(\"amount\");\n MoneyV2.add(\"currencyCode\");\n });\n value.addInlineFragmentOn(\"PricingPercentageValue\", function (PricingPercentageValue) {\n PricingPercentageValue.add(\"percentage\");\n });\n });\n root.addInlineFragmentOn(\"ManualDiscountApplication\", function (ManualDiscountApplication) {\n ManualDiscountApplication.add(\"title\");\n ManualDiscountApplication.add(\"description\");\n });\n root.addInlineFragmentOn(\"DiscountCodeApplication\", function (DiscountCodeApplication) {\n DiscountCodeApplication.add(\"code\");\n DiscountCodeApplication.add(\"applicable\");\n });\n root.addInlineFragmentOn(\"ScriptDiscountApplication\", function (ScriptDiscountApplication) {\n ScriptDiscountApplication.add(\"title\");\n });\n root.addInlineFragmentOn(\"AutomaticDiscountApplication\", function (AutomaticDiscountApplication) {\n AutomaticDiscountApplication.add(\"title\");\n });\n });\n spreads.AppliedGiftCardFragment = document.defineFragment(\"AppliedGiftCardFragment\", \"AppliedGiftCard\", function (root) {\n root.add(\"amountUsed\", function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"amountUsed\", {\n alias: \"amountUsedV2\"\n }, function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"balance\", function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"balance\", {\n alias: \"balanceV2\"\n }, function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"presentmentAmountUsed\", function (presentmentAmountUsed) {\n presentmentAmountUsed.add(\"amount\");\n presentmentAmountUsed.add(\"currencyCode\");\n });\n root.add(\"id\");\n root.add(\"lastCharacters\");\n });\n spreads.VariantWithProductFragment = document.defineFragment(\"VariantWithProductFragment\", \"ProductVariant\", function (root) {\n root.addFragment(spreads.VariantFragment);\n root.add(\"product\", function (product) {\n product.add(\"id\");\n product.add(\"handle\");\n });\n });\n spreads.UserErrorFragment = document.defineFragment(\"UserErrorFragment\", \"UserError\", function (root) {\n root.add(\"field\");\n root.add(\"message\");\n });\n spreads.CheckoutUserErrorFragment = document.defineFragment(\"CheckoutUserErrorFragment\", \"CheckoutUserError\", function (root) {\n root.add(\"field\");\n root.add(\"message\");\n root.add(\"code\");\n });\n spreads.MailingAddressFragment = document.defineFragment(\"MailingAddressFragment\", \"MailingAddress\", function (root) {\n root.add(\"id\");\n root.add(\"address1\");\n root.add(\"address2\");\n root.add(\"city\");\n root.add(\"company\");\n root.add(\"country\");\n root.add(\"firstName\");\n root.add(\"formatted\");\n root.add(\"lastName\");\n root.add(\"latitude\");\n root.add(\"longitude\");\n root.add(\"phone\");\n root.add(\"province\");\n root.add(\"zip\");\n root.add(\"name\");\n root.add(\"countryCodeV2\", {\n alias: \"countryCode\"\n });\n root.add(\"provinceCode\");\n });\n spreads.CheckoutFragment = document.defineFragment(\"CheckoutFragment\", \"Checkout\", function (root) {\n root.add(\"id\");\n root.add(\"ready\");\n root.add(\"requiresShipping\");\n root.add(\"note\");\n root.add(\"paymentDue\", function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"paymentDue\", {\n alias: \"paymentDueV2\"\n }, function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"webUrl\");\n root.add(\"orderStatusUrl\");\n root.add(\"taxExempt\");\n root.add(\"taxesIncluded\");\n root.add(\"currencyCode\");\n root.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"lineItemsSubtotalPrice\", function (lineItemsSubtotalPrice) {\n lineItemsSubtotalPrice.add(\"amount\");\n lineItemsSubtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"completedAt\");\n root.add(\"createdAt\");\n root.add(\"updatedAt\");\n root.add(\"email\");\n root.add(\"discountApplications\", {\n args: {\n first: 10\n }\n }, function (discountApplications) {\n discountApplications.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n discountApplications.add(\"edges\", function (edges) {\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n root.add(\"appliedGiftCards\", function (appliedGiftCards) {\n appliedGiftCards.addFragment(spreads.AppliedGiftCardFragment);\n });\n root.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n root.add(\"shippingLine\", function (shippingLine) {\n shippingLine.add(\"handle\");\n shippingLine.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"title\");\n });\n root.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n root.add(\"order\", function (order) {\n order.add(\"id\");\n order.add(\"processedAt\");\n order.add(\"orderNumber\");\n order.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", {\n alias: \"totalShippingPriceV2\"\n }, function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"currencyCode\");\n order.add(\"totalRefunded\", function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"totalRefunded\", {\n alias: \"totalRefundedV2\"\n }, function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"customerUrl\");\n order.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n order.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n });\n });\n });\n });\n root.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"id\");\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n node.add(\"discountAllocations\", function (discountAllocations) {\n discountAllocations.add(\"allocatedAmount\", function (allocatedAmount) {\n allocatedAmount.add(\"amount\");\n allocatedAmount.add(\"currencyCode\");\n });\n discountAllocations.add(\"discountApplication\", function (discountApplication) {\n discountApplication.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n });\n });\n });\n document.addMutation([variables.__defaultOperation__.checkoutId, variables.__defaultOperation__.lineItems], function (root) {\n root.add(\"checkoutLineItemsUpdate\", {\n args: {\n checkoutId: variables.__defaultOperation__.checkoutId,\n lineItems: variables.__defaultOperation__.lineItems\n }\n }, function (checkoutLineItemsUpdate) {\n checkoutLineItemsUpdate.add(\"userErrors\", function (userErrors) {\n userErrors.addFragment(spreads.UserErrorFragment);\n });\n checkoutLineItemsUpdate.add(\"checkoutUserErrors\", function (checkoutUserErrors) {\n checkoutUserErrors.addFragment(spreads.CheckoutUserErrorFragment);\n });\n checkoutLineItemsUpdate.add(\"checkout\", function (checkout) {\n checkout.addFragment(spreads.CheckoutFragment);\n });\n });\n });\n return document;\n}\n\nfunction query$18(client) {\n var document = client.document();\n var spreads = {};\n var variables = {};\n variables.checkoutAttributesUpdateV2 = {};\n variables.checkoutAttributesUpdateV2.checkoutId = client.variable(\"checkoutId\", \"ID!\");\n variables.checkoutAttributesUpdateV2.input = client.variable(\"input\", \"CheckoutAttributesUpdateV2Input!\");\n spreads.VariantFragment = document.defineFragment(\"VariantFragment\", \"ProductVariant\", function (root) {\n root.add(\"id\");\n root.add(\"title\");\n root.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"weight\");\n root.add(\"availableForSale\", {\n alias: \"available\"\n });\n root.add(\"sku\");\n root.add(\"compareAtPrice\", function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"compareAtPrice\", {\n alias: \"compareAtPriceV2\"\n }, function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n image.add(\"width\");\n image.add(\"height\");\n });\n root.add(\"selectedOptions\", function (selectedOptions) {\n selectedOptions.add(\"name\");\n selectedOptions.add(\"value\");\n });\n root.add(\"unitPrice\", function (unitPrice) {\n unitPrice.add(\"amount\");\n unitPrice.add(\"currencyCode\");\n });\n root.add(\"unitPriceMeasurement\", function (unitPriceMeasurement) {\n unitPriceMeasurement.add(\"measuredType\");\n unitPriceMeasurement.add(\"quantityUnit\");\n unitPriceMeasurement.add(\"quantityValue\");\n unitPriceMeasurement.add(\"referenceUnit\");\n unitPriceMeasurement.add(\"referenceValue\");\n });\n });\n spreads.DiscountApplicationFragment = document.defineFragment(\"DiscountApplicationFragment\", \"DiscountApplication\", function (root) {\n root.add(\"targetSelection\");\n root.add(\"allocationMethod\");\n root.add(\"targetType\");\n root.add(\"value\", function (value) {\n value.addInlineFragmentOn(\"MoneyV2\", function (MoneyV2) {\n MoneyV2.add(\"amount\");\n MoneyV2.add(\"currencyCode\");\n });\n value.addInlineFragmentOn(\"PricingPercentageValue\", function (PricingPercentageValue) {\n PricingPercentageValue.add(\"percentage\");\n });\n });\n root.addInlineFragmentOn(\"ManualDiscountApplication\", function (ManualDiscountApplication) {\n ManualDiscountApplication.add(\"title\");\n ManualDiscountApplication.add(\"description\");\n });\n root.addInlineFragmentOn(\"DiscountCodeApplication\", function (DiscountCodeApplication) {\n DiscountCodeApplication.add(\"code\");\n DiscountCodeApplication.add(\"applicable\");\n });\n root.addInlineFragmentOn(\"ScriptDiscountApplication\", function (ScriptDiscountApplication) {\n ScriptDiscountApplication.add(\"title\");\n });\n root.addInlineFragmentOn(\"AutomaticDiscountApplication\", function (AutomaticDiscountApplication) {\n AutomaticDiscountApplication.add(\"title\");\n });\n });\n spreads.AppliedGiftCardFragment = document.defineFragment(\"AppliedGiftCardFragment\", \"AppliedGiftCard\", function (root) {\n root.add(\"amountUsed\", function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"amountUsed\", {\n alias: \"amountUsedV2\"\n }, function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"balance\", function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"balance\", {\n alias: \"balanceV2\"\n }, function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"presentmentAmountUsed\", function (presentmentAmountUsed) {\n presentmentAmountUsed.add(\"amount\");\n presentmentAmountUsed.add(\"currencyCode\");\n });\n root.add(\"id\");\n root.add(\"lastCharacters\");\n });\n spreads.VariantWithProductFragment = document.defineFragment(\"VariantWithProductFragment\", \"ProductVariant\", function (root) {\n root.addFragment(spreads.VariantFragment);\n root.add(\"product\", function (product) {\n product.add(\"id\");\n product.add(\"handle\");\n });\n });\n spreads.UserErrorFragment = document.defineFragment(\"UserErrorFragment\", \"UserError\", function (root) {\n root.add(\"field\");\n root.add(\"message\");\n });\n spreads.CheckoutUserErrorFragment = document.defineFragment(\"CheckoutUserErrorFragment\", \"CheckoutUserError\", function (root) {\n root.add(\"field\");\n root.add(\"message\");\n root.add(\"code\");\n });\n spreads.MailingAddressFragment = document.defineFragment(\"MailingAddressFragment\", \"MailingAddress\", function (root) {\n root.add(\"id\");\n root.add(\"address1\");\n root.add(\"address2\");\n root.add(\"city\");\n root.add(\"company\");\n root.add(\"country\");\n root.add(\"firstName\");\n root.add(\"formatted\");\n root.add(\"lastName\");\n root.add(\"latitude\");\n root.add(\"longitude\");\n root.add(\"phone\");\n root.add(\"province\");\n root.add(\"zip\");\n root.add(\"name\");\n root.add(\"countryCodeV2\", {\n alias: \"countryCode\"\n });\n root.add(\"provinceCode\");\n });\n spreads.CheckoutFragment = document.defineFragment(\"CheckoutFragment\", \"Checkout\", function (root) {\n root.add(\"id\");\n root.add(\"ready\");\n root.add(\"requiresShipping\");\n root.add(\"note\");\n root.add(\"paymentDue\", function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"paymentDue\", {\n alias: \"paymentDueV2\"\n }, function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"webUrl\");\n root.add(\"orderStatusUrl\");\n root.add(\"taxExempt\");\n root.add(\"taxesIncluded\");\n root.add(\"currencyCode\");\n root.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"lineItemsSubtotalPrice\", function (lineItemsSubtotalPrice) {\n lineItemsSubtotalPrice.add(\"amount\");\n lineItemsSubtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"completedAt\");\n root.add(\"createdAt\");\n root.add(\"updatedAt\");\n root.add(\"email\");\n root.add(\"discountApplications\", {\n args: {\n first: 10\n }\n }, function (discountApplications) {\n discountApplications.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n discountApplications.add(\"edges\", function (edges) {\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n root.add(\"appliedGiftCards\", function (appliedGiftCards) {\n appliedGiftCards.addFragment(spreads.AppliedGiftCardFragment);\n });\n root.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n root.add(\"shippingLine\", function (shippingLine) {\n shippingLine.add(\"handle\");\n shippingLine.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"title\");\n });\n root.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n root.add(\"order\", function (order) {\n order.add(\"id\");\n order.add(\"processedAt\");\n order.add(\"orderNumber\");\n order.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", {\n alias: \"totalShippingPriceV2\"\n }, function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"currencyCode\");\n order.add(\"totalRefunded\", function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"totalRefunded\", {\n alias: \"totalRefundedV2\"\n }, function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"customerUrl\");\n order.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n order.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n });\n });\n });\n });\n root.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"id\");\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n node.add(\"discountAllocations\", function (discountAllocations) {\n discountAllocations.add(\"allocatedAmount\", function (allocatedAmount) {\n allocatedAmount.add(\"amount\");\n allocatedAmount.add(\"currencyCode\");\n });\n discountAllocations.add(\"discountApplication\", function (discountApplication) {\n discountApplication.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n });\n });\n });\n document.addMutation(\"checkoutAttributesUpdateV2\", [variables.checkoutAttributesUpdateV2.checkoutId, variables.checkoutAttributesUpdateV2.input], function (root) {\n root.add(\"checkoutAttributesUpdateV2\", {\n args: {\n checkoutId: variables.checkoutAttributesUpdateV2.checkoutId,\n input: variables.checkoutAttributesUpdateV2.input\n }\n }, function (checkoutAttributesUpdateV2) {\n checkoutAttributesUpdateV2.add(\"userErrors\", function (userErrors) {\n userErrors.addFragment(spreads.UserErrorFragment);\n });\n checkoutAttributesUpdateV2.add(\"checkoutUserErrors\", function (checkoutUserErrors) {\n checkoutUserErrors.addFragment(spreads.CheckoutUserErrorFragment);\n });\n checkoutAttributesUpdateV2.add(\"checkout\", function (checkout) {\n checkout.addFragment(spreads.CheckoutFragment);\n });\n });\n });\n return document;\n}\n\nfunction query$19(client) {\n var document = client.document();\n var spreads = {};\n var variables = {};\n variables.checkoutDiscountCodeApplyV2 = {};\n variables.checkoutDiscountCodeApplyV2.discountCode = client.variable(\"discountCode\", \"String!\");\n variables.checkoutDiscountCodeApplyV2.checkoutId = client.variable(\"checkoutId\", \"ID!\");\n spreads.VariantFragment = document.defineFragment(\"VariantFragment\", \"ProductVariant\", function (root) {\n root.add(\"id\");\n root.add(\"title\");\n root.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"weight\");\n root.add(\"availableForSale\", {\n alias: \"available\"\n });\n root.add(\"sku\");\n root.add(\"compareAtPrice\", function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"compareAtPrice\", {\n alias: \"compareAtPriceV2\"\n }, function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n image.add(\"width\");\n image.add(\"height\");\n });\n root.add(\"selectedOptions\", function (selectedOptions) {\n selectedOptions.add(\"name\");\n selectedOptions.add(\"value\");\n });\n root.add(\"unitPrice\", function (unitPrice) {\n unitPrice.add(\"amount\");\n unitPrice.add(\"currencyCode\");\n });\n root.add(\"unitPriceMeasurement\", function (unitPriceMeasurement) {\n unitPriceMeasurement.add(\"measuredType\");\n unitPriceMeasurement.add(\"quantityUnit\");\n unitPriceMeasurement.add(\"quantityValue\");\n unitPriceMeasurement.add(\"referenceUnit\");\n unitPriceMeasurement.add(\"referenceValue\");\n });\n });\n spreads.DiscountApplicationFragment = document.defineFragment(\"DiscountApplicationFragment\", \"DiscountApplication\", function (root) {\n root.add(\"targetSelection\");\n root.add(\"allocationMethod\");\n root.add(\"targetType\");\n root.add(\"value\", function (value) {\n value.addInlineFragmentOn(\"MoneyV2\", function (MoneyV2) {\n MoneyV2.add(\"amount\");\n MoneyV2.add(\"currencyCode\");\n });\n value.addInlineFragmentOn(\"PricingPercentageValue\", function (PricingPercentageValue) {\n PricingPercentageValue.add(\"percentage\");\n });\n });\n root.addInlineFragmentOn(\"ManualDiscountApplication\", function (ManualDiscountApplication) {\n ManualDiscountApplication.add(\"title\");\n ManualDiscountApplication.add(\"description\");\n });\n root.addInlineFragmentOn(\"DiscountCodeApplication\", function (DiscountCodeApplication) {\n DiscountCodeApplication.add(\"code\");\n DiscountCodeApplication.add(\"applicable\");\n });\n root.addInlineFragmentOn(\"ScriptDiscountApplication\", function (ScriptDiscountApplication) {\n ScriptDiscountApplication.add(\"title\");\n });\n root.addInlineFragmentOn(\"AutomaticDiscountApplication\", function (AutomaticDiscountApplication) {\n AutomaticDiscountApplication.add(\"title\");\n });\n });\n spreads.AppliedGiftCardFragment = document.defineFragment(\"AppliedGiftCardFragment\", \"AppliedGiftCard\", function (root) {\n root.add(\"amountUsed\", function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"amountUsed\", {\n alias: \"amountUsedV2\"\n }, function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"balance\", function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"balance\", {\n alias: \"balanceV2\"\n }, function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"presentmentAmountUsed\", function (presentmentAmountUsed) {\n presentmentAmountUsed.add(\"amount\");\n presentmentAmountUsed.add(\"currencyCode\");\n });\n root.add(\"id\");\n root.add(\"lastCharacters\");\n });\n spreads.VariantWithProductFragment = document.defineFragment(\"VariantWithProductFragment\", \"ProductVariant\", function (root) {\n root.addFragment(spreads.VariantFragment);\n root.add(\"product\", function (product) {\n product.add(\"id\");\n product.add(\"handle\");\n });\n });\n spreads.UserErrorFragment = document.defineFragment(\"UserErrorFragment\", \"UserError\", function (root) {\n root.add(\"field\");\n root.add(\"message\");\n });\n spreads.CheckoutUserErrorFragment = document.defineFragment(\"CheckoutUserErrorFragment\", \"CheckoutUserError\", function (root) {\n root.add(\"field\");\n root.add(\"message\");\n root.add(\"code\");\n });\n spreads.MailingAddressFragment = document.defineFragment(\"MailingAddressFragment\", \"MailingAddress\", function (root) {\n root.add(\"id\");\n root.add(\"address1\");\n root.add(\"address2\");\n root.add(\"city\");\n root.add(\"company\");\n root.add(\"country\");\n root.add(\"firstName\");\n root.add(\"formatted\");\n root.add(\"lastName\");\n root.add(\"latitude\");\n root.add(\"longitude\");\n root.add(\"phone\");\n root.add(\"province\");\n root.add(\"zip\");\n root.add(\"name\");\n root.add(\"countryCodeV2\", {\n alias: \"countryCode\"\n });\n root.add(\"provinceCode\");\n });\n spreads.CheckoutFragment = document.defineFragment(\"CheckoutFragment\", \"Checkout\", function (root) {\n root.add(\"id\");\n root.add(\"ready\");\n root.add(\"requiresShipping\");\n root.add(\"note\");\n root.add(\"paymentDue\", function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"paymentDue\", {\n alias: \"paymentDueV2\"\n }, function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"webUrl\");\n root.add(\"orderStatusUrl\");\n root.add(\"taxExempt\");\n root.add(\"taxesIncluded\");\n root.add(\"currencyCode\");\n root.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"lineItemsSubtotalPrice\", function (lineItemsSubtotalPrice) {\n lineItemsSubtotalPrice.add(\"amount\");\n lineItemsSubtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"completedAt\");\n root.add(\"createdAt\");\n root.add(\"updatedAt\");\n root.add(\"email\");\n root.add(\"discountApplications\", {\n args: {\n first: 10\n }\n }, function (discountApplications) {\n discountApplications.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n discountApplications.add(\"edges\", function (edges) {\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n root.add(\"appliedGiftCards\", function (appliedGiftCards) {\n appliedGiftCards.addFragment(spreads.AppliedGiftCardFragment);\n });\n root.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n root.add(\"shippingLine\", function (shippingLine) {\n shippingLine.add(\"handle\");\n shippingLine.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"title\");\n });\n root.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n root.add(\"order\", function (order) {\n order.add(\"id\");\n order.add(\"processedAt\");\n order.add(\"orderNumber\");\n order.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", {\n alias: \"totalShippingPriceV2\"\n }, function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"currencyCode\");\n order.add(\"totalRefunded\", function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"totalRefunded\", {\n alias: \"totalRefundedV2\"\n }, function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"customerUrl\");\n order.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n order.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n });\n });\n });\n });\n root.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"id\");\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n node.add(\"discountAllocations\", function (discountAllocations) {\n discountAllocations.add(\"allocatedAmount\", function (allocatedAmount) {\n allocatedAmount.add(\"amount\");\n allocatedAmount.add(\"currencyCode\");\n });\n discountAllocations.add(\"discountApplication\", function (discountApplication) {\n discountApplication.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n });\n });\n });\n document.addMutation(\"checkoutDiscountCodeApplyV2\", [variables.checkoutDiscountCodeApplyV2.discountCode, variables.checkoutDiscountCodeApplyV2.checkoutId], function (root) {\n root.add(\"checkoutDiscountCodeApplyV2\", {\n args: {\n discountCode: variables.checkoutDiscountCodeApplyV2.discountCode,\n checkoutId: variables.checkoutDiscountCodeApplyV2.checkoutId\n }\n }, function (checkoutDiscountCodeApplyV2) {\n checkoutDiscountCodeApplyV2.add(\"userErrors\", function (userErrors) {\n userErrors.addFragment(spreads.UserErrorFragment);\n });\n checkoutDiscountCodeApplyV2.add(\"checkoutUserErrors\", function (checkoutUserErrors) {\n checkoutUserErrors.addFragment(spreads.CheckoutUserErrorFragment);\n });\n checkoutDiscountCodeApplyV2.add(\"checkout\", function (checkout) {\n checkout.addFragment(spreads.CheckoutFragment);\n });\n });\n });\n return document;\n}\n\nfunction query$20(client) {\n var document = client.document();\n var spreads = {};\n var variables = {};\n variables.checkoutDiscountCodeRemove = {};\n variables.checkoutDiscountCodeRemove.checkoutId = client.variable(\"checkoutId\", \"ID!\");\n spreads.VariantFragment = document.defineFragment(\"VariantFragment\", \"ProductVariant\", function (root) {\n root.add(\"id\");\n root.add(\"title\");\n root.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"weight\");\n root.add(\"availableForSale\", {\n alias: \"available\"\n });\n root.add(\"sku\");\n root.add(\"compareAtPrice\", function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"compareAtPrice\", {\n alias: \"compareAtPriceV2\"\n }, function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n image.add(\"width\");\n image.add(\"height\");\n });\n root.add(\"selectedOptions\", function (selectedOptions) {\n selectedOptions.add(\"name\");\n selectedOptions.add(\"value\");\n });\n root.add(\"unitPrice\", function (unitPrice) {\n unitPrice.add(\"amount\");\n unitPrice.add(\"currencyCode\");\n });\n root.add(\"unitPriceMeasurement\", function (unitPriceMeasurement) {\n unitPriceMeasurement.add(\"measuredType\");\n unitPriceMeasurement.add(\"quantityUnit\");\n unitPriceMeasurement.add(\"quantityValue\");\n unitPriceMeasurement.add(\"referenceUnit\");\n unitPriceMeasurement.add(\"referenceValue\");\n });\n });\n spreads.DiscountApplicationFragment = document.defineFragment(\"DiscountApplicationFragment\", \"DiscountApplication\", function (root) {\n root.add(\"targetSelection\");\n root.add(\"allocationMethod\");\n root.add(\"targetType\");\n root.add(\"value\", function (value) {\n value.addInlineFragmentOn(\"MoneyV2\", function (MoneyV2) {\n MoneyV2.add(\"amount\");\n MoneyV2.add(\"currencyCode\");\n });\n value.addInlineFragmentOn(\"PricingPercentageValue\", function (PricingPercentageValue) {\n PricingPercentageValue.add(\"percentage\");\n });\n });\n root.addInlineFragmentOn(\"ManualDiscountApplication\", function (ManualDiscountApplication) {\n ManualDiscountApplication.add(\"title\");\n ManualDiscountApplication.add(\"description\");\n });\n root.addInlineFragmentOn(\"DiscountCodeApplication\", function (DiscountCodeApplication) {\n DiscountCodeApplication.add(\"code\");\n DiscountCodeApplication.add(\"applicable\");\n });\n root.addInlineFragmentOn(\"ScriptDiscountApplication\", function (ScriptDiscountApplication) {\n ScriptDiscountApplication.add(\"title\");\n });\n root.addInlineFragmentOn(\"AutomaticDiscountApplication\", function (AutomaticDiscountApplication) {\n AutomaticDiscountApplication.add(\"title\");\n });\n });\n spreads.AppliedGiftCardFragment = document.defineFragment(\"AppliedGiftCardFragment\", \"AppliedGiftCard\", function (root) {\n root.add(\"amountUsed\", function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"amountUsed\", {\n alias: \"amountUsedV2\"\n }, function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"balance\", function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"balance\", {\n alias: \"balanceV2\"\n }, function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"presentmentAmountUsed\", function (presentmentAmountUsed) {\n presentmentAmountUsed.add(\"amount\");\n presentmentAmountUsed.add(\"currencyCode\");\n });\n root.add(\"id\");\n root.add(\"lastCharacters\");\n });\n spreads.VariantWithProductFragment = document.defineFragment(\"VariantWithProductFragment\", \"ProductVariant\", function (root) {\n root.addFragment(spreads.VariantFragment);\n root.add(\"product\", function (product) {\n product.add(\"id\");\n product.add(\"handle\");\n });\n });\n spreads.UserErrorFragment = document.defineFragment(\"UserErrorFragment\", \"UserError\", function (root) {\n root.add(\"field\");\n root.add(\"message\");\n });\n spreads.CheckoutUserErrorFragment = document.defineFragment(\"CheckoutUserErrorFragment\", \"CheckoutUserError\", function (root) {\n root.add(\"field\");\n root.add(\"message\");\n root.add(\"code\");\n });\n spreads.MailingAddressFragment = document.defineFragment(\"MailingAddressFragment\", \"MailingAddress\", function (root) {\n root.add(\"id\");\n root.add(\"address1\");\n root.add(\"address2\");\n root.add(\"city\");\n root.add(\"company\");\n root.add(\"country\");\n root.add(\"firstName\");\n root.add(\"formatted\");\n root.add(\"lastName\");\n root.add(\"latitude\");\n root.add(\"longitude\");\n root.add(\"phone\");\n root.add(\"province\");\n root.add(\"zip\");\n root.add(\"name\");\n root.add(\"countryCodeV2\", {\n alias: \"countryCode\"\n });\n root.add(\"provinceCode\");\n });\n spreads.CheckoutFragment = document.defineFragment(\"CheckoutFragment\", \"Checkout\", function (root) {\n root.add(\"id\");\n root.add(\"ready\");\n root.add(\"requiresShipping\");\n root.add(\"note\");\n root.add(\"paymentDue\", function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"paymentDue\", {\n alias: \"paymentDueV2\"\n }, function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"webUrl\");\n root.add(\"orderStatusUrl\");\n root.add(\"taxExempt\");\n root.add(\"taxesIncluded\");\n root.add(\"currencyCode\");\n root.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"lineItemsSubtotalPrice\", function (lineItemsSubtotalPrice) {\n lineItemsSubtotalPrice.add(\"amount\");\n lineItemsSubtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"completedAt\");\n root.add(\"createdAt\");\n root.add(\"updatedAt\");\n root.add(\"email\");\n root.add(\"discountApplications\", {\n args: {\n first: 10\n }\n }, function (discountApplications) {\n discountApplications.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n discountApplications.add(\"edges\", function (edges) {\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n root.add(\"appliedGiftCards\", function (appliedGiftCards) {\n appliedGiftCards.addFragment(spreads.AppliedGiftCardFragment);\n });\n root.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n root.add(\"shippingLine\", function (shippingLine) {\n shippingLine.add(\"handle\");\n shippingLine.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"title\");\n });\n root.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n root.add(\"order\", function (order) {\n order.add(\"id\");\n order.add(\"processedAt\");\n order.add(\"orderNumber\");\n order.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", {\n alias: \"totalShippingPriceV2\"\n }, function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"currencyCode\");\n order.add(\"totalRefunded\", function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"totalRefunded\", {\n alias: \"totalRefundedV2\"\n }, function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"customerUrl\");\n order.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n order.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n });\n });\n });\n });\n root.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"id\");\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n node.add(\"discountAllocations\", function (discountAllocations) {\n discountAllocations.add(\"allocatedAmount\", function (allocatedAmount) {\n allocatedAmount.add(\"amount\");\n allocatedAmount.add(\"currencyCode\");\n });\n discountAllocations.add(\"discountApplication\", function (discountApplication) {\n discountApplication.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n });\n });\n });\n document.addMutation(\"checkoutDiscountCodeRemove\", [variables.checkoutDiscountCodeRemove.checkoutId], function (root) {\n root.add(\"checkoutDiscountCodeRemove\", {\n args: {\n checkoutId: variables.checkoutDiscountCodeRemove.checkoutId\n }\n }, function (checkoutDiscountCodeRemove) {\n checkoutDiscountCodeRemove.add(\"userErrors\", function (userErrors) {\n userErrors.addFragment(spreads.UserErrorFragment);\n });\n checkoutDiscountCodeRemove.add(\"checkoutUserErrors\", function (checkoutUserErrors) {\n checkoutUserErrors.addFragment(spreads.CheckoutUserErrorFragment);\n });\n checkoutDiscountCodeRemove.add(\"checkout\", function (checkout) {\n checkout.addFragment(spreads.CheckoutFragment);\n });\n });\n });\n return document;\n}\n\nfunction query$21(client) {\n var document = client.document();\n var spreads = {};\n var variables = {};\n variables.checkoutGiftCardsAppend = {};\n variables.checkoutGiftCardsAppend.giftCardCodes = client.variable(\"giftCardCodes\", \"[String!]!\");\n variables.checkoutGiftCardsAppend.checkoutId = client.variable(\"checkoutId\", \"ID!\");\n spreads.VariantFragment = document.defineFragment(\"VariantFragment\", \"ProductVariant\", function (root) {\n root.add(\"id\");\n root.add(\"title\");\n root.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"weight\");\n root.add(\"availableForSale\", {\n alias: \"available\"\n });\n root.add(\"sku\");\n root.add(\"compareAtPrice\", function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"compareAtPrice\", {\n alias: \"compareAtPriceV2\"\n }, function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n image.add(\"width\");\n image.add(\"height\");\n });\n root.add(\"selectedOptions\", function (selectedOptions) {\n selectedOptions.add(\"name\");\n selectedOptions.add(\"value\");\n });\n root.add(\"unitPrice\", function (unitPrice) {\n unitPrice.add(\"amount\");\n unitPrice.add(\"currencyCode\");\n });\n root.add(\"unitPriceMeasurement\", function (unitPriceMeasurement) {\n unitPriceMeasurement.add(\"measuredType\");\n unitPriceMeasurement.add(\"quantityUnit\");\n unitPriceMeasurement.add(\"quantityValue\");\n unitPriceMeasurement.add(\"referenceUnit\");\n unitPriceMeasurement.add(\"referenceValue\");\n });\n });\n spreads.DiscountApplicationFragment = document.defineFragment(\"DiscountApplicationFragment\", \"DiscountApplication\", function (root) {\n root.add(\"targetSelection\");\n root.add(\"allocationMethod\");\n root.add(\"targetType\");\n root.add(\"value\", function (value) {\n value.addInlineFragmentOn(\"MoneyV2\", function (MoneyV2) {\n MoneyV2.add(\"amount\");\n MoneyV2.add(\"currencyCode\");\n });\n value.addInlineFragmentOn(\"PricingPercentageValue\", function (PricingPercentageValue) {\n PricingPercentageValue.add(\"percentage\");\n });\n });\n root.addInlineFragmentOn(\"ManualDiscountApplication\", function (ManualDiscountApplication) {\n ManualDiscountApplication.add(\"title\");\n ManualDiscountApplication.add(\"description\");\n });\n root.addInlineFragmentOn(\"DiscountCodeApplication\", function (DiscountCodeApplication) {\n DiscountCodeApplication.add(\"code\");\n DiscountCodeApplication.add(\"applicable\");\n });\n root.addInlineFragmentOn(\"ScriptDiscountApplication\", function (ScriptDiscountApplication) {\n ScriptDiscountApplication.add(\"title\");\n });\n root.addInlineFragmentOn(\"AutomaticDiscountApplication\", function (AutomaticDiscountApplication) {\n AutomaticDiscountApplication.add(\"title\");\n });\n });\n spreads.AppliedGiftCardFragment = document.defineFragment(\"AppliedGiftCardFragment\", \"AppliedGiftCard\", function (root) {\n root.add(\"amountUsed\", function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"amountUsed\", {\n alias: \"amountUsedV2\"\n }, function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"balance\", function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"balance\", {\n alias: \"balanceV2\"\n }, function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"presentmentAmountUsed\", function (presentmentAmountUsed) {\n presentmentAmountUsed.add(\"amount\");\n presentmentAmountUsed.add(\"currencyCode\");\n });\n root.add(\"id\");\n root.add(\"lastCharacters\");\n });\n spreads.VariantWithProductFragment = document.defineFragment(\"VariantWithProductFragment\", \"ProductVariant\", function (root) {\n root.addFragment(spreads.VariantFragment);\n root.add(\"product\", function (product) {\n product.add(\"id\");\n product.add(\"handle\");\n });\n });\n spreads.UserErrorFragment = document.defineFragment(\"UserErrorFragment\", \"UserError\", function (root) {\n root.add(\"field\");\n root.add(\"message\");\n });\n spreads.CheckoutUserErrorFragment = document.defineFragment(\"CheckoutUserErrorFragment\", \"CheckoutUserError\", function (root) {\n root.add(\"field\");\n root.add(\"message\");\n root.add(\"code\");\n });\n spreads.MailingAddressFragment = document.defineFragment(\"MailingAddressFragment\", \"MailingAddress\", function (root) {\n root.add(\"id\");\n root.add(\"address1\");\n root.add(\"address2\");\n root.add(\"city\");\n root.add(\"company\");\n root.add(\"country\");\n root.add(\"firstName\");\n root.add(\"formatted\");\n root.add(\"lastName\");\n root.add(\"latitude\");\n root.add(\"longitude\");\n root.add(\"phone\");\n root.add(\"province\");\n root.add(\"zip\");\n root.add(\"name\");\n root.add(\"countryCodeV2\", {\n alias: \"countryCode\"\n });\n root.add(\"provinceCode\");\n });\n spreads.CheckoutFragment = document.defineFragment(\"CheckoutFragment\", \"Checkout\", function (root) {\n root.add(\"id\");\n root.add(\"ready\");\n root.add(\"requiresShipping\");\n root.add(\"note\");\n root.add(\"paymentDue\", function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"paymentDue\", {\n alias: \"paymentDueV2\"\n }, function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"webUrl\");\n root.add(\"orderStatusUrl\");\n root.add(\"taxExempt\");\n root.add(\"taxesIncluded\");\n root.add(\"currencyCode\");\n root.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"lineItemsSubtotalPrice\", function (lineItemsSubtotalPrice) {\n lineItemsSubtotalPrice.add(\"amount\");\n lineItemsSubtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"completedAt\");\n root.add(\"createdAt\");\n root.add(\"updatedAt\");\n root.add(\"email\");\n root.add(\"discountApplications\", {\n args: {\n first: 10\n }\n }, function (discountApplications) {\n discountApplications.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n discountApplications.add(\"edges\", function (edges) {\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n root.add(\"appliedGiftCards\", function (appliedGiftCards) {\n appliedGiftCards.addFragment(spreads.AppliedGiftCardFragment);\n });\n root.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n root.add(\"shippingLine\", function (shippingLine) {\n shippingLine.add(\"handle\");\n shippingLine.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"title\");\n });\n root.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n root.add(\"order\", function (order) {\n order.add(\"id\");\n order.add(\"processedAt\");\n order.add(\"orderNumber\");\n order.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", {\n alias: \"totalShippingPriceV2\"\n }, function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"currencyCode\");\n order.add(\"totalRefunded\", function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"totalRefunded\", {\n alias: \"totalRefundedV2\"\n }, function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"customerUrl\");\n order.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n order.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n });\n });\n });\n });\n root.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"id\");\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n node.add(\"discountAllocations\", function (discountAllocations) {\n discountAllocations.add(\"allocatedAmount\", function (allocatedAmount) {\n allocatedAmount.add(\"amount\");\n allocatedAmount.add(\"currencyCode\");\n });\n discountAllocations.add(\"discountApplication\", function (discountApplication) {\n discountApplication.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n });\n });\n });\n document.addMutation(\"checkoutGiftCardsAppend\", [variables.checkoutGiftCardsAppend.giftCardCodes, variables.checkoutGiftCardsAppend.checkoutId], function (root) {\n root.add(\"checkoutGiftCardsAppend\", {\n args: {\n giftCardCodes: variables.checkoutGiftCardsAppend.giftCardCodes,\n checkoutId: variables.checkoutGiftCardsAppend.checkoutId\n }\n }, function (checkoutGiftCardsAppend) {\n checkoutGiftCardsAppend.add(\"userErrors\", function (userErrors) {\n userErrors.addFragment(spreads.UserErrorFragment);\n });\n checkoutGiftCardsAppend.add(\"checkoutUserErrors\", function (checkoutUserErrors) {\n checkoutUserErrors.addFragment(spreads.CheckoutUserErrorFragment);\n });\n checkoutGiftCardsAppend.add(\"checkout\", function (checkout) {\n checkout.addFragment(spreads.CheckoutFragment);\n });\n });\n });\n return document;\n}\n\nfunction query$22(client) {\n var document = client.document();\n var spreads = {};\n var variables = {};\n variables.checkoutGiftCardRemoveV2 = {};\n variables.checkoutGiftCardRemoveV2.appliedGiftCardId = client.variable(\"appliedGiftCardId\", \"ID!\");\n variables.checkoutGiftCardRemoveV2.checkoutId = client.variable(\"checkoutId\", \"ID!\");\n spreads.VariantFragment = document.defineFragment(\"VariantFragment\", \"ProductVariant\", function (root) {\n root.add(\"id\");\n root.add(\"title\");\n root.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"weight\");\n root.add(\"availableForSale\", {\n alias: \"available\"\n });\n root.add(\"sku\");\n root.add(\"compareAtPrice\", function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"compareAtPrice\", {\n alias: \"compareAtPriceV2\"\n }, function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n image.add(\"width\");\n image.add(\"height\");\n });\n root.add(\"selectedOptions\", function (selectedOptions) {\n selectedOptions.add(\"name\");\n selectedOptions.add(\"value\");\n });\n root.add(\"unitPrice\", function (unitPrice) {\n unitPrice.add(\"amount\");\n unitPrice.add(\"currencyCode\");\n });\n root.add(\"unitPriceMeasurement\", function (unitPriceMeasurement) {\n unitPriceMeasurement.add(\"measuredType\");\n unitPriceMeasurement.add(\"quantityUnit\");\n unitPriceMeasurement.add(\"quantityValue\");\n unitPriceMeasurement.add(\"referenceUnit\");\n unitPriceMeasurement.add(\"referenceValue\");\n });\n });\n spreads.DiscountApplicationFragment = document.defineFragment(\"DiscountApplicationFragment\", \"DiscountApplication\", function (root) {\n root.add(\"targetSelection\");\n root.add(\"allocationMethod\");\n root.add(\"targetType\");\n root.add(\"value\", function (value) {\n value.addInlineFragmentOn(\"MoneyV2\", function (MoneyV2) {\n MoneyV2.add(\"amount\");\n MoneyV2.add(\"currencyCode\");\n });\n value.addInlineFragmentOn(\"PricingPercentageValue\", function (PricingPercentageValue) {\n PricingPercentageValue.add(\"percentage\");\n });\n });\n root.addInlineFragmentOn(\"ManualDiscountApplication\", function (ManualDiscountApplication) {\n ManualDiscountApplication.add(\"title\");\n ManualDiscountApplication.add(\"description\");\n });\n root.addInlineFragmentOn(\"DiscountCodeApplication\", function (DiscountCodeApplication) {\n DiscountCodeApplication.add(\"code\");\n DiscountCodeApplication.add(\"applicable\");\n });\n root.addInlineFragmentOn(\"ScriptDiscountApplication\", function (ScriptDiscountApplication) {\n ScriptDiscountApplication.add(\"title\");\n });\n root.addInlineFragmentOn(\"AutomaticDiscountApplication\", function (AutomaticDiscountApplication) {\n AutomaticDiscountApplication.add(\"title\");\n });\n });\n spreads.AppliedGiftCardFragment = document.defineFragment(\"AppliedGiftCardFragment\", \"AppliedGiftCard\", function (root) {\n root.add(\"amountUsed\", function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"amountUsed\", {\n alias: \"amountUsedV2\"\n }, function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"balance\", function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"balance\", {\n alias: \"balanceV2\"\n }, function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"presentmentAmountUsed\", function (presentmentAmountUsed) {\n presentmentAmountUsed.add(\"amount\");\n presentmentAmountUsed.add(\"currencyCode\");\n });\n root.add(\"id\");\n root.add(\"lastCharacters\");\n });\n spreads.VariantWithProductFragment = document.defineFragment(\"VariantWithProductFragment\", \"ProductVariant\", function (root) {\n root.addFragment(spreads.VariantFragment);\n root.add(\"product\", function (product) {\n product.add(\"id\");\n product.add(\"handle\");\n });\n });\n spreads.UserErrorFragment = document.defineFragment(\"UserErrorFragment\", \"UserError\", function (root) {\n root.add(\"field\");\n root.add(\"message\");\n });\n spreads.CheckoutUserErrorFragment = document.defineFragment(\"CheckoutUserErrorFragment\", \"CheckoutUserError\", function (root) {\n root.add(\"field\");\n root.add(\"message\");\n root.add(\"code\");\n });\n spreads.MailingAddressFragment = document.defineFragment(\"MailingAddressFragment\", \"MailingAddress\", function (root) {\n root.add(\"id\");\n root.add(\"address1\");\n root.add(\"address2\");\n root.add(\"city\");\n root.add(\"company\");\n root.add(\"country\");\n root.add(\"firstName\");\n root.add(\"formatted\");\n root.add(\"lastName\");\n root.add(\"latitude\");\n root.add(\"longitude\");\n root.add(\"phone\");\n root.add(\"province\");\n root.add(\"zip\");\n root.add(\"name\");\n root.add(\"countryCodeV2\", {\n alias: \"countryCode\"\n });\n root.add(\"provinceCode\");\n });\n spreads.CheckoutFragment = document.defineFragment(\"CheckoutFragment\", \"Checkout\", function (root) {\n root.add(\"id\");\n root.add(\"ready\");\n root.add(\"requiresShipping\");\n root.add(\"note\");\n root.add(\"paymentDue\", function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"paymentDue\", {\n alias: \"paymentDueV2\"\n }, function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"webUrl\");\n root.add(\"orderStatusUrl\");\n root.add(\"taxExempt\");\n root.add(\"taxesIncluded\");\n root.add(\"currencyCode\");\n root.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"lineItemsSubtotalPrice\", function (lineItemsSubtotalPrice) {\n lineItemsSubtotalPrice.add(\"amount\");\n lineItemsSubtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"completedAt\");\n root.add(\"createdAt\");\n root.add(\"updatedAt\");\n root.add(\"email\");\n root.add(\"discountApplications\", {\n args: {\n first: 10\n }\n }, function (discountApplications) {\n discountApplications.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n discountApplications.add(\"edges\", function (edges) {\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n root.add(\"appliedGiftCards\", function (appliedGiftCards) {\n appliedGiftCards.addFragment(spreads.AppliedGiftCardFragment);\n });\n root.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n root.add(\"shippingLine\", function (shippingLine) {\n shippingLine.add(\"handle\");\n shippingLine.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"title\");\n });\n root.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n root.add(\"order\", function (order) {\n order.add(\"id\");\n order.add(\"processedAt\");\n order.add(\"orderNumber\");\n order.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", {\n alias: \"totalShippingPriceV2\"\n }, function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"currencyCode\");\n order.add(\"totalRefunded\", function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"totalRefunded\", {\n alias: \"totalRefundedV2\"\n }, function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"customerUrl\");\n order.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n order.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n });\n });\n });\n });\n root.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"id\");\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n node.add(\"discountAllocations\", function (discountAllocations) {\n discountAllocations.add(\"allocatedAmount\", function (allocatedAmount) {\n allocatedAmount.add(\"amount\");\n allocatedAmount.add(\"currencyCode\");\n });\n discountAllocations.add(\"discountApplication\", function (discountApplication) {\n discountApplication.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n });\n });\n });\n document.addMutation(\"checkoutGiftCardRemoveV2\", [variables.checkoutGiftCardRemoveV2.appliedGiftCardId, variables.checkoutGiftCardRemoveV2.checkoutId], function (root) {\n root.add(\"checkoutGiftCardRemoveV2\", {\n args: {\n appliedGiftCardId: variables.checkoutGiftCardRemoveV2.appliedGiftCardId,\n checkoutId: variables.checkoutGiftCardRemoveV2.checkoutId\n }\n }, function (checkoutGiftCardRemoveV2) {\n checkoutGiftCardRemoveV2.add(\"userErrors\", function (userErrors) {\n userErrors.addFragment(spreads.UserErrorFragment);\n });\n checkoutGiftCardRemoveV2.add(\"checkoutUserErrors\", function (checkoutUserErrors) {\n checkoutUserErrors.addFragment(spreads.CheckoutUserErrorFragment);\n });\n checkoutGiftCardRemoveV2.add(\"checkout\", function (checkout) {\n checkout.addFragment(spreads.CheckoutFragment);\n });\n });\n });\n return document;\n}\n\nfunction query$23(client) {\n var document = client.document();\n var spreads = {};\n var variables = {};\n variables.checkoutEmailUpdateV2 = {};\n variables.checkoutEmailUpdateV2.checkoutId = client.variable(\"checkoutId\", \"ID!\");\n variables.checkoutEmailUpdateV2.email = client.variable(\"email\", \"String!\");\n spreads.VariantFragment = document.defineFragment(\"VariantFragment\", \"ProductVariant\", function (root) {\n root.add(\"id\");\n root.add(\"title\");\n root.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"weight\");\n root.add(\"availableForSale\", {\n alias: \"available\"\n });\n root.add(\"sku\");\n root.add(\"compareAtPrice\", function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"compareAtPrice\", {\n alias: \"compareAtPriceV2\"\n }, function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n image.add(\"width\");\n image.add(\"height\");\n });\n root.add(\"selectedOptions\", function (selectedOptions) {\n selectedOptions.add(\"name\");\n selectedOptions.add(\"value\");\n });\n root.add(\"unitPrice\", function (unitPrice) {\n unitPrice.add(\"amount\");\n unitPrice.add(\"currencyCode\");\n });\n root.add(\"unitPriceMeasurement\", function (unitPriceMeasurement) {\n unitPriceMeasurement.add(\"measuredType\");\n unitPriceMeasurement.add(\"quantityUnit\");\n unitPriceMeasurement.add(\"quantityValue\");\n unitPriceMeasurement.add(\"referenceUnit\");\n unitPriceMeasurement.add(\"referenceValue\");\n });\n });\n spreads.DiscountApplicationFragment = document.defineFragment(\"DiscountApplicationFragment\", \"DiscountApplication\", function (root) {\n root.add(\"targetSelection\");\n root.add(\"allocationMethod\");\n root.add(\"targetType\");\n root.add(\"value\", function (value) {\n value.addInlineFragmentOn(\"MoneyV2\", function (MoneyV2) {\n MoneyV2.add(\"amount\");\n MoneyV2.add(\"currencyCode\");\n });\n value.addInlineFragmentOn(\"PricingPercentageValue\", function (PricingPercentageValue) {\n PricingPercentageValue.add(\"percentage\");\n });\n });\n root.addInlineFragmentOn(\"ManualDiscountApplication\", function (ManualDiscountApplication) {\n ManualDiscountApplication.add(\"title\");\n ManualDiscountApplication.add(\"description\");\n });\n root.addInlineFragmentOn(\"DiscountCodeApplication\", function (DiscountCodeApplication) {\n DiscountCodeApplication.add(\"code\");\n DiscountCodeApplication.add(\"applicable\");\n });\n root.addInlineFragmentOn(\"ScriptDiscountApplication\", function (ScriptDiscountApplication) {\n ScriptDiscountApplication.add(\"title\");\n });\n root.addInlineFragmentOn(\"AutomaticDiscountApplication\", function (AutomaticDiscountApplication) {\n AutomaticDiscountApplication.add(\"title\");\n });\n });\n spreads.AppliedGiftCardFragment = document.defineFragment(\"AppliedGiftCardFragment\", \"AppliedGiftCard\", function (root) {\n root.add(\"amountUsed\", function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"amountUsed\", {\n alias: \"amountUsedV2\"\n }, function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"balance\", function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"balance\", {\n alias: \"balanceV2\"\n }, function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"presentmentAmountUsed\", function (presentmentAmountUsed) {\n presentmentAmountUsed.add(\"amount\");\n presentmentAmountUsed.add(\"currencyCode\");\n });\n root.add(\"id\");\n root.add(\"lastCharacters\");\n });\n spreads.VariantWithProductFragment = document.defineFragment(\"VariantWithProductFragment\", \"ProductVariant\", function (root) {\n root.addFragment(spreads.VariantFragment);\n root.add(\"product\", function (product) {\n product.add(\"id\");\n product.add(\"handle\");\n });\n });\n spreads.UserErrorFragment = document.defineFragment(\"UserErrorFragment\", \"UserError\", function (root) {\n root.add(\"field\");\n root.add(\"message\");\n });\n spreads.CheckoutUserErrorFragment = document.defineFragment(\"CheckoutUserErrorFragment\", \"CheckoutUserError\", function (root) {\n root.add(\"field\");\n root.add(\"message\");\n root.add(\"code\");\n });\n spreads.MailingAddressFragment = document.defineFragment(\"MailingAddressFragment\", \"MailingAddress\", function (root) {\n root.add(\"id\");\n root.add(\"address1\");\n root.add(\"address2\");\n root.add(\"city\");\n root.add(\"company\");\n root.add(\"country\");\n root.add(\"firstName\");\n root.add(\"formatted\");\n root.add(\"lastName\");\n root.add(\"latitude\");\n root.add(\"longitude\");\n root.add(\"phone\");\n root.add(\"province\");\n root.add(\"zip\");\n root.add(\"name\");\n root.add(\"countryCodeV2\", {\n alias: \"countryCode\"\n });\n root.add(\"provinceCode\");\n });\n spreads.CheckoutFragment = document.defineFragment(\"CheckoutFragment\", \"Checkout\", function (root) {\n root.add(\"id\");\n root.add(\"ready\");\n root.add(\"requiresShipping\");\n root.add(\"note\");\n root.add(\"paymentDue\", function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"paymentDue\", {\n alias: \"paymentDueV2\"\n }, function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"webUrl\");\n root.add(\"orderStatusUrl\");\n root.add(\"taxExempt\");\n root.add(\"taxesIncluded\");\n root.add(\"currencyCode\");\n root.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"lineItemsSubtotalPrice\", function (lineItemsSubtotalPrice) {\n lineItemsSubtotalPrice.add(\"amount\");\n lineItemsSubtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"completedAt\");\n root.add(\"createdAt\");\n root.add(\"updatedAt\");\n root.add(\"email\");\n root.add(\"discountApplications\", {\n args: {\n first: 10\n }\n }, function (discountApplications) {\n discountApplications.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n discountApplications.add(\"edges\", function (edges) {\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n root.add(\"appliedGiftCards\", function (appliedGiftCards) {\n appliedGiftCards.addFragment(spreads.AppliedGiftCardFragment);\n });\n root.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n root.add(\"shippingLine\", function (shippingLine) {\n shippingLine.add(\"handle\");\n shippingLine.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"title\");\n });\n root.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n root.add(\"order\", function (order) {\n order.add(\"id\");\n order.add(\"processedAt\");\n order.add(\"orderNumber\");\n order.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", {\n alias: \"totalShippingPriceV2\"\n }, function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"currencyCode\");\n order.add(\"totalRefunded\", function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"totalRefunded\", {\n alias: \"totalRefundedV2\"\n }, function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"customerUrl\");\n order.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n order.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n });\n });\n });\n });\n root.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"id\");\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n node.add(\"discountAllocations\", function (discountAllocations) {\n discountAllocations.add(\"allocatedAmount\", function (allocatedAmount) {\n allocatedAmount.add(\"amount\");\n allocatedAmount.add(\"currencyCode\");\n });\n discountAllocations.add(\"discountApplication\", function (discountApplication) {\n discountApplication.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n });\n });\n });\n document.addMutation(\"checkoutEmailUpdateV2\", [variables.checkoutEmailUpdateV2.checkoutId, variables.checkoutEmailUpdateV2.email], function (root) {\n root.add(\"checkoutEmailUpdateV2\", {\n args: {\n checkoutId: variables.checkoutEmailUpdateV2.checkoutId,\n email: variables.checkoutEmailUpdateV2.email\n }\n }, function (checkoutEmailUpdateV2) {\n checkoutEmailUpdateV2.add(\"userErrors\", function (userErrors) {\n userErrors.addFragment(spreads.UserErrorFragment);\n });\n checkoutEmailUpdateV2.add(\"checkoutUserErrors\", function (checkoutUserErrors) {\n checkoutUserErrors.addFragment(spreads.CheckoutUserErrorFragment);\n });\n checkoutEmailUpdateV2.add(\"checkout\", function (checkout) {\n checkout.addFragment(spreads.CheckoutFragment);\n });\n });\n });\n return document;\n}\n\nfunction query$24(client) {\n var document = client.document();\n var spreads = {};\n var variables = {};\n variables.checkoutShippingAddressUpdateV2 = {};\n variables.checkoutShippingAddressUpdateV2.shippingAddress = client.variable(\"shippingAddress\", \"MailingAddressInput!\");\n variables.checkoutShippingAddressUpdateV2.checkoutId = client.variable(\"checkoutId\", \"ID!\");\n spreads.VariantFragment = document.defineFragment(\"VariantFragment\", \"ProductVariant\", function (root) {\n root.add(\"id\");\n root.add(\"title\");\n root.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n root.add(\"weight\");\n root.add(\"availableForSale\", {\n alias: \"available\"\n });\n root.add(\"sku\");\n root.add(\"compareAtPrice\", function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"compareAtPrice\", {\n alias: \"compareAtPriceV2\"\n }, function (compareAtPrice) {\n compareAtPrice.add(\"amount\");\n compareAtPrice.add(\"currencyCode\");\n });\n root.add(\"image\", function (image) {\n image.add(\"id\");\n image.add(\"url\", {\n alias: \"src\"\n });\n image.add(\"altText\");\n image.add(\"width\");\n image.add(\"height\");\n });\n root.add(\"selectedOptions\", function (selectedOptions) {\n selectedOptions.add(\"name\");\n selectedOptions.add(\"value\");\n });\n root.add(\"unitPrice\", function (unitPrice) {\n unitPrice.add(\"amount\");\n unitPrice.add(\"currencyCode\");\n });\n root.add(\"unitPriceMeasurement\", function (unitPriceMeasurement) {\n unitPriceMeasurement.add(\"measuredType\");\n unitPriceMeasurement.add(\"quantityUnit\");\n unitPriceMeasurement.add(\"quantityValue\");\n unitPriceMeasurement.add(\"referenceUnit\");\n unitPriceMeasurement.add(\"referenceValue\");\n });\n });\n spreads.DiscountApplicationFragment = document.defineFragment(\"DiscountApplicationFragment\", \"DiscountApplication\", function (root) {\n root.add(\"targetSelection\");\n root.add(\"allocationMethod\");\n root.add(\"targetType\");\n root.add(\"value\", function (value) {\n value.addInlineFragmentOn(\"MoneyV2\", function (MoneyV2) {\n MoneyV2.add(\"amount\");\n MoneyV2.add(\"currencyCode\");\n });\n value.addInlineFragmentOn(\"PricingPercentageValue\", function (PricingPercentageValue) {\n PricingPercentageValue.add(\"percentage\");\n });\n });\n root.addInlineFragmentOn(\"ManualDiscountApplication\", function (ManualDiscountApplication) {\n ManualDiscountApplication.add(\"title\");\n ManualDiscountApplication.add(\"description\");\n });\n root.addInlineFragmentOn(\"DiscountCodeApplication\", function (DiscountCodeApplication) {\n DiscountCodeApplication.add(\"code\");\n DiscountCodeApplication.add(\"applicable\");\n });\n root.addInlineFragmentOn(\"ScriptDiscountApplication\", function (ScriptDiscountApplication) {\n ScriptDiscountApplication.add(\"title\");\n });\n root.addInlineFragmentOn(\"AutomaticDiscountApplication\", function (AutomaticDiscountApplication) {\n AutomaticDiscountApplication.add(\"title\");\n });\n });\n spreads.AppliedGiftCardFragment = document.defineFragment(\"AppliedGiftCardFragment\", \"AppliedGiftCard\", function (root) {\n root.add(\"amountUsed\", function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"amountUsed\", {\n alias: \"amountUsedV2\"\n }, function (amountUsed) {\n amountUsed.add(\"amount\");\n amountUsed.add(\"currencyCode\");\n });\n root.add(\"balance\", function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"balance\", {\n alias: \"balanceV2\"\n }, function (balance) {\n balance.add(\"amount\");\n balance.add(\"currencyCode\");\n });\n root.add(\"presentmentAmountUsed\", function (presentmentAmountUsed) {\n presentmentAmountUsed.add(\"amount\");\n presentmentAmountUsed.add(\"currencyCode\");\n });\n root.add(\"id\");\n root.add(\"lastCharacters\");\n });\n spreads.VariantWithProductFragment = document.defineFragment(\"VariantWithProductFragment\", \"ProductVariant\", function (root) {\n root.addFragment(spreads.VariantFragment);\n root.add(\"product\", function (product) {\n product.add(\"id\");\n product.add(\"handle\");\n });\n });\n spreads.UserErrorFragment = document.defineFragment(\"UserErrorFragment\", \"UserError\", function (root) {\n root.add(\"field\");\n root.add(\"message\");\n });\n spreads.CheckoutUserErrorFragment = document.defineFragment(\"CheckoutUserErrorFragment\", \"CheckoutUserError\", function (root) {\n root.add(\"field\");\n root.add(\"message\");\n root.add(\"code\");\n });\n spreads.MailingAddressFragment = document.defineFragment(\"MailingAddressFragment\", \"MailingAddress\", function (root) {\n root.add(\"id\");\n root.add(\"address1\");\n root.add(\"address2\");\n root.add(\"city\");\n root.add(\"company\");\n root.add(\"country\");\n root.add(\"firstName\");\n root.add(\"formatted\");\n root.add(\"lastName\");\n root.add(\"latitude\");\n root.add(\"longitude\");\n root.add(\"phone\");\n root.add(\"province\");\n root.add(\"zip\");\n root.add(\"name\");\n root.add(\"countryCodeV2\", {\n alias: \"countryCode\"\n });\n root.add(\"provinceCode\");\n });\n spreads.CheckoutFragment = document.defineFragment(\"CheckoutFragment\", \"Checkout\", function (root) {\n root.add(\"id\");\n root.add(\"ready\");\n root.add(\"requiresShipping\");\n root.add(\"note\");\n root.add(\"paymentDue\", function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"paymentDue\", {\n alias: \"paymentDueV2\"\n }, function (paymentDue) {\n paymentDue.add(\"amount\");\n paymentDue.add(\"currencyCode\");\n });\n root.add(\"webUrl\");\n root.add(\"orderStatusUrl\");\n root.add(\"taxExempt\");\n root.add(\"taxesIncluded\");\n root.add(\"currencyCode\");\n root.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n root.add(\"lineItemsSubtotalPrice\", function (lineItemsSubtotalPrice) {\n lineItemsSubtotalPrice.add(\"amount\");\n lineItemsSubtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n root.add(\"completedAt\");\n root.add(\"createdAt\");\n root.add(\"updatedAt\");\n root.add(\"email\");\n root.add(\"discountApplications\", {\n args: {\n first: 10\n }\n }, function (discountApplications) {\n discountApplications.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n discountApplications.add(\"edges\", function (edges) {\n edges.add(\"node\", function (node) {\n node.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n root.add(\"appliedGiftCards\", function (appliedGiftCards) {\n appliedGiftCards.addFragment(spreads.AppliedGiftCardFragment);\n });\n root.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n root.add(\"shippingLine\", function (shippingLine) {\n shippingLine.add(\"handle\");\n shippingLine.add(\"price\", function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"price\", {\n alias: \"priceV2\"\n }, function (price) {\n price.add(\"amount\");\n price.add(\"currencyCode\");\n });\n shippingLine.add(\"title\");\n });\n root.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n root.add(\"order\", function (order) {\n order.add(\"id\");\n order.add(\"processedAt\");\n order.add(\"orderNumber\");\n order.add(\"subtotalPrice\", function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"subtotalPrice\", {\n alias: \"subtotalPriceV2\"\n }, function (subtotalPrice) {\n subtotalPrice.add(\"amount\");\n subtotalPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalShippingPrice\", {\n alias: \"totalShippingPriceV2\"\n }, function (totalShippingPrice) {\n totalShippingPrice.add(\"amount\");\n totalShippingPrice.add(\"currencyCode\");\n });\n order.add(\"totalTax\", function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalTax\", {\n alias: \"totalTaxV2\"\n }, function (totalTax) {\n totalTax.add(\"amount\");\n totalTax.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"totalPrice\", {\n alias: \"totalPriceV2\"\n }, function (totalPrice) {\n totalPrice.add(\"amount\");\n totalPrice.add(\"currencyCode\");\n });\n order.add(\"currencyCode\");\n order.add(\"totalRefunded\", function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"totalRefunded\", {\n alias: \"totalRefundedV2\"\n }, function (totalRefunded) {\n totalRefunded.add(\"amount\");\n totalRefunded.add(\"currencyCode\");\n });\n order.add(\"customerUrl\");\n order.add(\"shippingAddress\", function (shippingAddress) {\n shippingAddress.addFragment(spreads.MailingAddressFragment);\n });\n order.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n });\n });\n });\n });\n root.add(\"lineItems\", {\n args: {\n first: 250\n }\n }, function (lineItems) {\n lineItems.add(\"pageInfo\", function (pageInfo) {\n pageInfo.add(\"hasNextPage\");\n pageInfo.add(\"hasPreviousPage\");\n });\n lineItems.add(\"edges\", function (edges) {\n edges.add(\"cursor\");\n edges.add(\"node\", function (node) {\n node.add(\"id\");\n node.add(\"title\");\n node.add(\"variant\", function (variant) {\n variant.addFragment(spreads.VariantWithProductFragment);\n });\n node.add(\"quantity\");\n node.add(\"customAttributes\", function (customAttributes) {\n customAttributes.add(\"key\");\n customAttributes.add(\"value\");\n });\n node.add(\"discountAllocations\", function (discountAllocations) {\n discountAllocations.add(\"allocatedAmount\", function (allocatedAmount) {\n allocatedAmount.add(\"amount\");\n allocatedAmount.add(\"currencyCode\");\n });\n discountAllocations.add(\"discountApplication\", function (discountApplication) {\n discountApplication.addFragment(spreads.DiscountApplicationFragment);\n });\n });\n });\n });\n });\n });\n document.addMutation(\"checkoutShippingAddressUpdateV2\", [variables.checkoutShippingAddressUpdateV2.shippingAddress, variables.checkoutShippingAddressUpdateV2.checkoutId], function (root) {\n root.add(\"checkoutShippingAddressUpdateV2\", {\n args: {\n shippingAddress: variables.checkoutShippingAddressUpdateV2.shippingAddress,\n checkoutId: variables.checkoutShippingAddressUpdateV2.checkoutId\n }\n }, function (checkoutShippingAddressUpdateV2) {\n checkoutShippingAddressUpdateV2.add(\"userErrors\", function (userErrors) {\n userErrors.addFragment(spreads.UserErrorFragment);\n });\n checkoutShippingAddressUpdateV2.add(\"checkoutUserErrors\", function (checkoutUserErrors) {\n checkoutUserErrors.addFragment(spreads.CheckoutUserErrorFragment);\n });\n checkoutShippingAddressUpdateV2.add(\"checkout\", function (checkout) {\n checkout.addFragment(spreads.CheckoutFragment);\n });\n });\n });\n return document;\n}\n\n// GraphQL\n/**\n * The JS Buy SDK checkout resource\n * @class\n */\n\nvar CheckoutResource = function (_Resource) {\n inherits$1(CheckoutResource, _Resource);\n\n function CheckoutResource() {\n classCallCheck$1(this, CheckoutResource);\n return possibleConstructorReturn$1(this, (CheckoutResource.__proto__ || Object.getPrototypeOf(CheckoutResource)).apply(this, arguments));\n }\n\n createClass$1(CheckoutResource, [{\n key: 'fetch',\n\n\n /**\n * Fetches a checkout by ID.\n *\n * @example\n * client.checkout.fetch('FlZj9rZXlN5MDY4ZDFiZTUyZTUwNTE2MDNhZjg=').then((checkout) => {\n * // Do something with the checkout\n * });\n *\n * @param {String} id The id of the checkout to fetch.\n * @return {Promise|GraphModel} A promise resolving with a `GraphModel` of the checkout.\n */\n value: function fetch(id) {\n var _this2 = this;\n\n return this.graphQLClient.send(query$12, { id: id }).then(defaultResolver('node')).then(function (checkout) {\n if (!checkout) {\n return null;\n }\n\n return _this2.graphQLClient.fetchAllPages(checkout.lineItems, { pageSize: 250 }).then(function (lineItems) {\n checkout.attrs.lineItems = lineItems;\n\n return checkout;\n });\n });\n }\n\n /**\n * Creates a checkout.\n *\n * @example\n * const input = {\n * lineItems: [\n * {variantId: 'Z2lkOi8vc2hvcGlmeS9Qcm9kdWN0VmFyaWFudC8yOTEwNjAyMjc5Mg==', quantity: 5}\n * ]\n * };\n *\n * client.checkout.create(input).then((checkout) => {\n * // Do something with the newly created checkout\n * });\n *\n * @param {Object} [input] An input object containing zero or more of:\n * @param {String} [input.email] An email connected to the checkout.\n * @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.\n * @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.\n * @param {String} [input.note] A note for the checkout.\n * @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.\n * @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.\n * @return {Promise|GraphModel} A promise resolving with the created checkout.\n */\n\n }, {\n key: 'create',\n value: function create() {\n var input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n return this.graphQLClient.send(query$13, { input: input }).then(handleCheckoutMutation('checkoutCreate', this.graphQLClient));\n }\n\n /**\n * Replaces the value of checkout's custom attributes and/or note with values defined in the input\n *\n * @example\n * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N=';\n * const input = {customAttributes: [{key: \"MyKey\", value: \"MyValue\"}]};\n *\n * client.checkout.updateAttributes(checkoutId, input).then((checkout) => {\n * // Do something with the updated checkout\n * });\n *\n * @param {String} checkoutId The ID of the checkout to update.\n * @param {Object} [input] An input object containing zero or more of:\n * @param {Boolean} [input.allowPartialAddresses] An email connected to the checkout.\n * @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.\n * @param {String} [input.note] A note for the checkout.\n * @return {Promise|GraphModel} A promise resolving with the updated checkout.\n */\n\n }, {\n key: 'updateAttributes',\n value: function updateAttributes(checkoutId) {\n var input = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n return this.graphQLClient.send(query$18, { checkoutId: checkoutId, input: input }).then(handleCheckoutMutation('checkoutAttributesUpdateV2', this.graphQLClient));\n }\n\n /**\n * Replaces the value of checkout's email address\n *\n * @example\n * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N=';\n * const email = 'user@example.com';\n *\n * client.checkout.updateEmail(checkoutId, email).then((checkout) => {\n * // Do something with the updated checkout\n * });\n *\n * @param {String} checkoutId The ID of the checkout to update.\n * @param {String} email The email address to apply to the checkout.\n * @return {Promise|GraphModel} A promise resolving with the updated checkout.\n */\n\n }, {\n key: 'updateEmail',\n value: function updateEmail(checkoutId, email) {\n return this.graphQLClient.send(query$23, { checkoutId: checkoutId, email: email }).then(handleCheckoutMutation('checkoutEmailUpdateV2', this.graphQLClient));\n }\n\n /**\n * Adds line items to an existing checkout.\n *\n * @example\n * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N=';\n * const lineItems = [{variantId: 'Z2lkOi8vc2hvcGlmeS9Qcm9kdWN0VmFyaWFudC8yOTEwNjAyMjc5Mg==', quantity: 5}];\n *\n * client.checkout.addLineItems(checkoutId, lineItems).then((checkout) => {\n * // Do something with the updated checkout\n * });\n *\n * @param {String} checkoutId The ID of the checkout to add line items to.\n * @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.\n * @return {Promise|GraphModel} A promise resolving with the updated checkout.\n */\n\n }, {\n key: 'addLineItems',\n value: function addLineItems(checkoutId, lineItems) {\n return this.graphQLClient.send(query$14, { checkoutId: checkoutId, lineItems: lineItems }).then(handleCheckoutMutation('checkoutLineItemsAdd', this.graphQLClient));\n }\n\n /**\n * Applies a discount to an existing checkout using a discount code.\n *\n * @example\n * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N=';\n * const discountCode = 'best-discount-ever';\n *\n * client.checkout.addDiscount(checkoutId, discountCode).then((checkout) => {\n * // Do something with the updated checkout\n * });\n *\n * @param {String} checkoutId The ID of the checkout to add discount to.\n * @param {String} discountCode The discount code to apply to the checkout.\n * @return {Promise|GraphModel} A promise resolving with the updated checkout.\n */\n\n }, {\n key: 'addDiscount',\n value: function addDiscount(checkoutId, discountCode) {\n return this.graphQLClient.send(query$19, { checkoutId: checkoutId, discountCode: discountCode }).then(handleCheckoutMutation('checkoutDiscountCodeApplyV2', this.graphQLClient));\n }\n\n /**\n * Removes the applied discount from an existing checkout.\n *\n * @example\n * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N=';\n *\n * client.checkout.removeDiscount(checkoutId).then((checkout) => {\n * // Do something with the updated checkout\n * });\n *\n * @param {String} checkoutId The ID of the checkout to remove the discount from.\n * @return {Promise|GraphModel} A promise resolving with the updated checkout.\n */\n\n }, {\n key: 'removeDiscount',\n value: function removeDiscount(checkoutId) {\n return this.graphQLClient.send(query$20, { checkoutId: checkoutId }).then(handleCheckoutMutation('checkoutDiscountCodeRemove', this.graphQLClient));\n }\n\n /**\n * Applies gift cards to an existing checkout using a list of gift card codes\n *\n * @example\n * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N=';\n * const giftCardCodes = ['6FD8853DAGAA949F'];\n *\n * client.checkout.addGiftCards(checkoutId, giftCardCodes).then((checkout) => {\n * // Do something with the updated checkout\n * });\n *\n * @param {String} checkoutId The ID of the checkout to add gift cards to.\n * @param {String[]} giftCardCodes The gift card codes to apply to the checkout.\n * @return {Promise|GraphModel} A promise resolving with the updated checkout.\n */\n\n }, {\n key: 'addGiftCards',\n value: function addGiftCards(checkoutId, giftCardCodes) {\n return this.graphQLClient.send(query$21, { checkoutId: checkoutId, giftCardCodes: giftCardCodes }).then(handleCheckoutMutation('checkoutGiftCardsAppend', this.graphQLClient));\n }\n\n /**\n * Remove a gift card from an existing checkout\n *\n * @example\n * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N=';\n * const appliedGiftCardId = 'Z2lkOi8vc2hvcGlmeS9BcHBsaWVkR2lmdENhcmQvNDI4NTQ1ODAzMTI=';\n *\n * client.checkout.removeGiftCard(checkoutId, appliedGiftCardId).then((checkout) => {\n * // Do something with the updated checkout\n * });\n *\n * @param {String} checkoutId The ID of the checkout to add gift cards to.\n * @param {String} appliedGiftCardId The gift card id to remove from the checkout.\n * @return {Promise|GraphModel} A promise resolving with the updated checkout.\n */\n\n }, {\n key: 'removeGiftCard',\n value: function removeGiftCard(checkoutId, appliedGiftCardId) {\n return this.graphQLClient.send(query$22, { checkoutId: checkoutId, appliedGiftCardId: appliedGiftCardId }).then(handleCheckoutMutation('checkoutGiftCardRemoveV2', this.graphQLClient));\n }\n\n /**\n * Removes line items from an existing checkout.\n *\n * @example\n * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N=';\n * const lineItemIds = ['TViZGE5Y2U1ZDFhY2FiMmM2YT9rZXk9NTc2YjBhODcwNWIxYzg0YjE5ZjRmZGQ5NjczNGVkZGU='];\n *\n * client.checkout.removeLineItems(checkoutId, lineItemIds).then((checkout) => {\n * // Do something with the updated checkout\n * });\n *\n * @param {String} checkoutId The ID of the checkout to remove line items from.\n * @param {String[]} lineItemIds A list of the ids of line items to remove from the checkout.\n * @return {Promise|GraphModel} A promise resolving with the updated checkout.\n */\n\n }, {\n key: 'removeLineItems',\n value: function removeLineItems(checkoutId, lineItemIds) {\n return this.graphQLClient.send(query$15, { checkoutId: checkoutId, lineItemIds: lineItemIds }).then(handleCheckoutMutation('checkoutLineItemsRemove', this.graphQLClient));\n }\n\n /**\n * Replace line items on an existing checkout.\n *\n * @example\n * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N=';\n * const lineItems = [{variantId: 'Z2lkOi8vc2hvcGlmeS9Qcm9kdWN0VmFyaWFudC8yOTEwNjAyMjc5Mg==', quantity: 5}];\n *\n * client.checkout.replaceLineItems(checkoutId, lineItems).then((checkout) => {\n * // Do something with the updated checkout\n * });\n *\n * @param {String} checkoutId The ID of the checkout to add line items to.\n * @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.\n * @return {Promise|GraphModel} A promise resolving with the updated checkout.\n */\n\n }, {\n key: 'replaceLineItems',\n value: function replaceLineItems(checkoutId, lineItems) {\n return this.graphQLClient.send(query$16, { checkoutId: checkoutId, lineItems: lineItems }).then(handleCheckoutMutation('checkoutLineItemsReplace', this.graphQLClient));\n }\n\n /**\n * Updates line items on an existing checkout.\n *\n * @example\n * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N=';\n * const lineItems = [\n * {\n * id: 'TViZGE5Y2U1ZDFhY2FiMmM2YT9rZXk9NTc2YjBhODcwNWIxYzg0YjE5ZjRmZGQ5NjczNGVkZGU=',\n * quantity: 5,\n * variantId: 'Z2lkOi8vc2hvcGlmeS9Qcm9kdWN0VmFyaWFudC8yOTEwNjAyMjc5Mg=='\n * }\n * ];\n *\n * client.checkout.updateLineItems(checkoutId, lineItems).then(checkout => {\n * // Do something with the updated checkout\n * });\n *\n * @param {String} checkoutId The ID of the checkout to update a line item on.\n * @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.\n * @return {Promise|GraphModel} A promise resolving with the updated checkout.\n */\n\n }, {\n key: 'updateLineItems',\n value: function updateLineItems(checkoutId, lineItems) {\n return this.graphQLClient.send(query$17, { checkoutId: checkoutId, lineItems: lineItems }).then(handleCheckoutMutation('checkoutLineItemsUpdate', this.graphQLClient));\n }\n\n /**\n * Updates shipping address on an existing checkout.\n *\n * @example\n * const checkoutId = 'Z2lkOi8vc2hvcGlmeS9DaGVja291dC9kMTZmM2EzMDM4Yjc4N=';\n * const shippingAddress = {\n * address1: 'Chestnut Street 92',\n * address2: 'Apartment 2',\n * city: 'Louisville',\n * company: null,\n * country: 'United States',\n * firstName: 'Bob',\n * lastName: 'Norman',\n * phone: '555-625-1199',\n * province: 'Kentucky',\n * zip: '40202'\n * };\n *\n * client.checkout.updateShippingAddress(checkoutId, shippingAddress).then(checkout => {\n * // Do something with the updated checkout\n * });\n *\n * @param {String} checkoutId The ID of the checkout to update shipping address.\n * @param {Object} shippingAddress A shipping address.\n * @return {Promise|GraphModel} A promise resolving with the updated checkout.\n */\n\n }, {\n key: 'updateShippingAddress',\n value: function updateShippingAddress(checkoutId, shippingAddress) {\n return this.graphQLClient.send(query$24, { checkoutId: checkoutId, shippingAddress: shippingAddress }).then(handleCheckoutMutation('checkoutShippingAddressUpdateV2', this.graphQLClient));\n }\n }]);\n return CheckoutResource;\n}(Resource);\n\n/**\n * @namespace ImageHelpers\n */\nvar imageHelpers = {\n\n /**\n * Generates the image src for a resized image with maximum dimensions `maxWidth` and `maxHeight`.\n * Images do not scale up.\n *\n * @example\n * const url = client.image.helpers.imageForSize(product.variants[0].image, {maxWidth: 50, maxHeight: 50});\n *\n * @memberof ImageHelpers\n * @method imageForSize\n * @param {Object} image The original image model to generate the image src for.\n * @param {Object} options An options object containing:\n * @param {Integer} options.maxWidth The maximum width for the image.\n * @param {Integer} options.maxHeight The maximum height for the image.\n * @return {String} The image src for the resized image.\n */\n imageForSize: function imageForSize(image, _ref) {\n var maxWidth = _ref.maxWidth,\n maxHeight = _ref.maxHeight;\n\n var splitUrl = image.src.split('?');\n var notQuery = splitUrl[0];\n var query = splitUrl[1] ? '?' + splitUrl[1] : '';\n\n // Use the section before the query\n var imageTokens = notQuery.split('.');\n\n // Take the token before the file extension and append the dimensions\n var imagePathIndex = imageTokens.length - 2;\n\n imageTokens[imagePathIndex] = imageTokens[imagePathIndex] + '_' + maxWidth + 'x' + maxHeight;\n\n return '' + imageTokens.join('.') + query;\n }\n};\n\n/**\n * The JS Buy SDK image resource\n * @class\n */\n\nvar ImageResource = function (_Resource) {\n inherits$1(ImageResource, _Resource);\n\n function ImageResource() {\n classCallCheck$1(this, ImageResource);\n return possibleConstructorReturn$1(this, (ImageResource.__proto__ || Object.getPrototypeOf(ImageResource)).apply(this, arguments));\n }\n\n createClass$1(ImageResource, [{\n key: 'helpers',\n get: function get$$1() {\n return imageHelpers;\n }\n }]);\n return ImageResource;\n}(Resource);\n\nvar version = \"2.19.0\";\n\nvar AppliedGiftCard = {\n \"name\": \"AppliedGiftCard\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"amountUsed\": \"MoneyV2\",\n \"balance\": \"MoneyV2\",\n \"id\": \"ID\",\n \"lastCharacters\": \"String\",\n \"presentmentAmountUsed\": \"MoneyV2\"\n },\n \"implementsNode\": true\n};\n\nvar Attribute = {\n \"name\": \"Attribute\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"key\": \"String\",\n \"value\": \"String\"\n },\n \"implementsNode\": false\n};\n\nvar AutomaticDiscountApplication = {\n \"name\": \"AutomaticDiscountApplication\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"title\": \"String\"\n },\n \"implementsNode\": false\n};\n\nvar Boolean$1 = {\n \"name\": \"Boolean\",\n \"kind\": \"SCALAR\"\n};\n\nvar Checkout = {\n \"name\": \"Checkout\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"appliedGiftCards\": \"AppliedGiftCard\",\n \"completedAt\": \"DateTime\",\n \"createdAt\": \"DateTime\",\n \"currencyCode\": \"CurrencyCode\",\n \"customAttributes\": \"Attribute\",\n \"discountApplications\": \"DiscountApplicationConnection\",\n \"email\": \"String\",\n \"id\": \"ID\",\n \"lineItems\": \"CheckoutLineItemConnection\",\n \"lineItemsSubtotalPrice\": \"MoneyV2\",\n \"note\": \"String\",\n \"order\": \"Order\",\n \"orderStatusUrl\": \"URL\",\n \"paymentDue\": \"MoneyV2\",\n \"ready\": \"Boolean\",\n \"requiresShipping\": \"Boolean\",\n \"shippingAddress\": \"MailingAddress\",\n \"shippingLine\": \"ShippingRate\",\n \"subtotalPrice\": \"MoneyV2\",\n \"taxExempt\": \"Boolean\",\n \"taxesIncluded\": \"Boolean\",\n \"totalPrice\": \"MoneyV2\",\n \"totalTax\": \"MoneyV2\",\n \"updatedAt\": \"DateTime\",\n \"webUrl\": \"URL\"\n },\n \"implementsNode\": true\n};\n\nvar CheckoutAttributesUpdateV2Payload = {\n \"name\": \"CheckoutAttributesUpdateV2Payload\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"checkout\": \"Checkout\",\n \"checkoutUserErrors\": \"CheckoutUserError\",\n \"userErrors\": \"UserError\"\n },\n \"implementsNode\": false\n};\n\nvar CheckoutCreatePayload = {\n \"name\": \"CheckoutCreatePayload\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"checkout\": \"Checkout\",\n \"checkoutUserErrors\": \"CheckoutUserError\",\n \"userErrors\": \"UserError\"\n },\n \"implementsNode\": false\n};\n\nvar CheckoutDiscountCodeApplyV2Payload = {\n \"name\": \"CheckoutDiscountCodeApplyV2Payload\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"checkout\": \"Checkout\",\n \"checkoutUserErrors\": \"CheckoutUserError\",\n \"userErrors\": \"UserError\"\n },\n \"implementsNode\": false\n};\n\nvar CheckoutDiscountCodeRemovePayload = {\n \"name\": \"CheckoutDiscountCodeRemovePayload\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"checkout\": \"Checkout\",\n \"checkoutUserErrors\": \"CheckoutUserError\",\n \"userErrors\": \"UserError\"\n },\n \"implementsNode\": false\n};\n\nvar CheckoutEmailUpdateV2Payload = {\n \"name\": \"CheckoutEmailUpdateV2Payload\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"checkout\": \"Checkout\",\n \"checkoutUserErrors\": \"CheckoutUserError\",\n \"userErrors\": \"UserError\"\n },\n \"implementsNode\": false\n};\n\nvar CheckoutErrorCode = {\n \"name\": \"CheckoutErrorCode\",\n \"kind\": \"ENUM\"\n};\n\nvar CheckoutGiftCardRemoveV2Payload = {\n \"name\": \"CheckoutGiftCardRemoveV2Payload\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"checkout\": \"Checkout\",\n \"checkoutUserErrors\": \"CheckoutUserError\",\n \"userErrors\": \"UserError\"\n },\n \"implementsNode\": false\n};\n\nvar CheckoutGiftCardsAppendPayload = {\n \"name\": \"CheckoutGiftCardsAppendPayload\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"checkout\": \"Checkout\",\n \"checkoutUserErrors\": \"CheckoutUserError\",\n \"userErrors\": \"UserError\"\n },\n \"implementsNode\": false\n};\n\nvar CheckoutLineItem = {\n \"name\": \"CheckoutLineItem\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"customAttributes\": \"Attribute\",\n \"discountAllocations\": \"DiscountAllocation\",\n \"id\": \"ID\",\n \"quantity\": \"Int\",\n \"title\": \"String\",\n \"variant\": \"ProductVariant\"\n },\n \"implementsNode\": true\n};\n\nvar CheckoutLineItemConnection = {\n \"name\": \"CheckoutLineItemConnection\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"edges\": \"CheckoutLineItemEdge\",\n \"pageInfo\": \"PageInfo\"\n },\n \"implementsNode\": false\n};\n\nvar CheckoutLineItemEdge = {\n \"name\": \"CheckoutLineItemEdge\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"cursor\": \"String\",\n \"node\": \"CheckoutLineItem\"\n },\n \"implementsNode\": false\n};\n\nvar CheckoutLineItemsAddPayload = {\n \"name\": \"CheckoutLineItemsAddPayload\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"checkout\": \"Checkout\",\n \"checkoutUserErrors\": \"CheckoutUserError\",\n \"userErrors\": \"UserError\"\n },\n \"implementsNode\": false\n};\n\nvar CheckoutLineItemsRemovePayload = {\n \"name\": \"CheckoutLineItemsRemovePayload\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"checkout\": \"Checkout\",\n \"checkoutUserErrors\": \"CheckoutUserError\",\n \"userErrors\": \"UserError\"\n },\n \"implementsNode\": false\n};\n\nvar CheckoutLineItemsReplacePayload = {\n \"name\": \"CheckoutLineItemsReplacePayload\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"checkout\": \"Checkout\",\n \"userErrors\": \"CheckoutUserError\"\n },\n \"implementsNode\": false\n};\n\nvar CheckoutLineItemsUpdatePayload = {\n \"name\": \"CheckoutLineItemsUpdatePayload\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"checkout\": \"Checkout\",\n \"checkoutUserErrors\": \"CheckoutUserError\",\n \"userErrors\": \"UserError\"\n },\n \"implementsNode\": false\n};\n\nvar CheckoutShippingAddressUpdateV2Payload = {\n \"name\": \"CheckoutShippingAddressUpdateV2Payload\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"checkout\": \"Checkout\",\n \"checkoutUserErrors\": \"CheckoutUserError\",\n \"userErrors\": \"UserError\"\n },\n \"implementsNode\": false\n};\n\nvar CheckoutUserError = {\n \"name\": \"CheckoutUserError\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"code\": \"CheckoutErrorCode\",\n \"field\": \"String\",\n \"message\": \"String\"\n },\n \"implementsNode\": false\n};\n\nvar Collection = {\n \"name\": \"Collection\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"description\": \"String\",\n \"descriptionHtml\": \"HTML\",\n \"handle\": \"String\",\n \"id\": \"ID\",\n \"image\": \"Image\",\n \"products\": \"ProductConnection\",\n \"title\": \"String\",\n \"updatedAt\": \"DateTime\"\n },\n \"implementsNode\": true\n};\n\nvar CollectionConnection = {\n \"name\": \"CollectionConnection\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"edges\": \"CollectionEdge\",\n \"pageInfo\": \"PageInfo\"\n },\n \"implementsNode\": false\n};\n\nvar CollectionEdge = {\n \"name\": \"CollectionEdge\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"cursor\": \"String\",\n \"node\": \"Collection\"\n },\n \"implementsNode\": false\n};\n\nvar CountryCode = {\n \"name\": \"CountryCode\",\n \"kind\": \"ENUM\"\n};\n\nvar CurrencyCode = {\n \"name\": \"CurrencyCode\",\n \"kind\": \"ENUM\"\n};\n\nvar DateTime = {\n \"name\": \"DateTime\",\n \"kind\": \"SCALAR\"\n};\n\nvar Decimal = {\n \"name\": \"Decimal\",\n \"kind\": \"SCALAR\"\n};\n\nvar DiscountAllocation = {\n \"name\": \"DiscountAllocation\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"allocatedAmount\": \"MoneyV2\",\n \"discountApplication\": \"DiscountApplication\"\n },\n \"implementsNode\": false\n};\n\nvar DiscountApplication = {\n \"name\": \"DiscountApplication\",\n \"kind\": \"INTERFACE\",\n \"fieldBaseTypes\": {\n \"allocationMethod\": \"DiscountApplicationAllocationMethod\",\n \"targetSelection\": \"DiscountApplicationTargetSelection\",\n \"targetType\": \"DiscountApplicationTargetType\",\n \"value\": \"PricingValue\"\n },\n \"possibleTypes\": [\"AutomaticDiscountApplication\", \"DiscountCodeApplication\", \"ManualDiscountApplication\", \"ScriptDiscountApplication\"]\n};\n\nvar DiscountApplicationAllocationMethod = {\n \"name\": \"DiscountApplicationAllocationMethod\",\n \"kind\": \"ENUM\"\n};\n\nvar DiscountApplicationConnection = {\n \"name\": \"DiscountApplicationConnection\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"edges\": \"DiscountApplicationEdge\",\n \"pageInfo\": \"PageInfo\"\n },\n \"implementsNode\": false\n};\n\nvar DiscountApplicationEdge = {\n \"name\": \"DiscountApplicationEdge\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"node\": \"DiscountApplication\"\n },\n \"implementsNode\": false\n};\n\nvar DiscountApplicationTargetSelection = {\n \"name\": \"DiscountApplicationTargetSelection\",\n \"kind\": \"ENUM\"\n};\n\nvar DiscountApplicationTargetType = {\n \"name\": \"DiscountApplicationTargetType\",\n \"kind\": \"ENUM\"\n};\n\nvar DiscountCodeApplication = {\n \"name\": \"DiscountCodeApplication\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"applicable\": \"Boolean\",\n \"code\": \"String\"\n },\n \"implementsNode\": false\n};\n\nvar Domain = {\n \"name\": \"Domain\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"host\": \"String\",\n \"sslEnabled\": \"Boolean\",\n \"url\": \"URL\"\n },\n \"implementsNode\": false\n};\n\nvar Float = {\n \"name\": \"Float\",\n \"kind\": \"SCALAR\"\n};\n\nvar HTML = {\n \"name\": \"HTML\",\n \"kind\": \"SCALAR\"\n};\n\nvar ID = {\n \"name\": \"ID\",\n \"kind\": \"SCALAR\"\n};\n\nvar Image = {\n \"name\": \"Image\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"altText\": \"String\",\n \"height\": \"Int\",\n \"id\": \"ID\",\n \"url\": \"URL\",\n \"width\": \"Int\"\n },\n \"implementsNode\": false\n};\n\nvar ImageConnection = {\n \"name\": \"ImageConnection\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"edges\": \"ImageEdge\",\n \"pageInfo\": \"PageInfo\"\n },\n \"implementsNode\": false\n};\n\nvar ImageEdge = {\n \"name\": \"ImageEdge\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"cursor\": \"String\",\n \"node\": \"Image\"\n },\n \"implementsNode\": false\n};\n\nvar Int = {\n \"name\": \"Int\",\n \"kind\": \"SCALAR\"\n};\n\nvar MailingAddress = {\n \"name\": \"MailingAddress\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"address1\": \"String\",\n \"address2\": \"String\",\n \"city\": \"String\",\n \"company\": \"String\",\n \"country\": \"String\",\n \"countryCodeV2\": \"CountryCode\",\n \"firstName\": \"String\",\n \"formatted\": \"String\",\n \"id\": \"ID\",\n \"lastName\": \"String\",\n \"latitude\": \"Float\",\n \"longitude\": \"Float\",\n \"name\": \"String\",\n \"phone\": \"String\",\n \"province\": \"String\",\n \"provinceCode\": \"String\",\n \"zip\": \"String\"\n },\n \"implementsNode\": true\n};\n\nvar ManualDiscountApplication = {\n \"name\": \"ManualDiscountApplication\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"description\": \"String\",\n \"title\": \"String\"\n },\n \"implementsNode\": false\n};\n\nvar MoneyV2 = {\n \"name\": \"MoneyV2\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"amount\": \"Decimal\",\n \"currencyCode\": \"CurrencyCode\"\n },\n \"implementsNode\": false\n};\n\nvar Mutation$1 = {\n \"name\": \"Mutation\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"checkoutAttributesUpdateV2\": \"CheckoutAttributesUpdateV2Payload\",\n \"checkoutCreate\": \"CheckoutCreatePayload\",\n \"checkoutDiscountCodeApplyV2\": \"CheckoutDiscountCodeApplyV2Payload\",\n \"checkoutDiscountCodeRemove\": \"CheckoutDiscountCodeRemovePayload\",\n \"checkoutEmailUpdateV2\": \"CheckoutEmailUpdateV2Payload\",\n \"checkoutGiftCardRemoveV2\": \"CheckoutGiftCardRemoveV2Payload\",\n \"checkoutGiftCardsAppend\": \"CheckoutGiftCardsAppendPayload\",\n \"checkoutLineItemsAdd\": \"CheckoutLineItemsAddPayload\",\n \"checkoutLineItemsRemove\": \"CheckoutLineItemsRemovePayload\",\n \"checkoutLineItemsReplace\": \"CheckoutLineItemsReplacePayload\",\n \"checkoutLineItemsUpdate\": \"CheckoutLineItemsUpdatePayload\",\n \"checkoutShippingAddressUpdateV2\": \"CheckoutShippingAddressUpdateV2Payload\"\n },\n \"implementsNode\": false,\n \"relayInputObjectBaseTypes\": {\n \"cartCreate\": \"CartInput\",\n \"cartMetafieldDelete\": \"CartMetafieldDeleteInput\",\n \"checkoutAttributesUpdateV2\": \"CheckoutAttributesUpdateV2Input\",\n \"checkoutCreate\": \"CheckoutCreateInput\",\n \"customerAccessTokenCreate\": \"CustomerAccessTokenCreateInput\",\n \"customerActivate\": \"CustomerActivateInput\",\n \"customerCreate\": \"CustomerCreateInput\",\n \"customerReset\": \"CustomerResetInput\"\n }\n};\n\nvar Node = {\n \"name\": \"Node\",\n \"kind\": \"INTERFACE\",\n \"fieldBaseTypes\": {},\n \"possibleTypes\": [\"AppliedGiftCard\", \"Article\", \"Blog\", \"Cart\", \"CartLine\", \"Checkout\", \"CheckoutLineItem\", \"Collection\", \"Comment\", \"ExternalVideo\", \"GenericFile\", \"Location\", \"MailingAddress\", \"Market\", \"MediaImage\", \"MediaPresentation\", \"Menu\", \"MenuItem\", \"Metafield\", \"Metaobject\", \"Model3d\", \"Order\", \"Page\", \"Payment\", \"Product\", \"ProductOption\", \"ProductVariant\", \"Shop\", \"ShopPolicy\", \"UrlRedirect\", \"Video\"]\n};\n\nvar Order = {\n \"name\": \"Order\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"currencyCode\": \"CurrencyCode\",\n \"customerUrl\": \"URL\",\n \"id\": \"ID\",\n \"lineItems\": \"OrderLineItemConnection\",\n \"orderNumber\": \"Int\",\n \"processedAt\": \"DateTime\",\n \"shippingAddress\": \"MailingAddress\",\n \"subtotalPrice\": \"MoneyV2\",\n \"totalPrice\": \"MoneyV2\",\n \"totalRefunded\": \"MoneyV2\",\n \"totalShippingPrice\": \"MoneyV2\",\n \"totalTax\": \"MoneyV2\"\n },\n \"implementsNode\": true\n};\n\nvar OrderLineItem = {\n \"name\": \"OrderLineItem\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"customAttributes\": \"Attribute\",\n \"quantity\": \"Int\",\n \"title\": \"String\",\n \"variant\": \"ProductVariant\"\n },\n \"implementsNode\": false\n};\n\nvar OrderLineItemConnection = {\n \"name\": \"OrderLineItemConnection\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"edges\": \"OrderLineItemEdge\",\n \"pageInfo\": \"PageInfo\"\n },\n \"implementsNode\": false\n};\n\nvar OrderLineItemEdge = {\n \"name\": \"OrderLineItemEdge\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"cursor\": \"String\",\n \"node\": \"OrderLineItem\"\n },\n \"implementsNode\": false\n};\n\nvar PageInfo = {\n \"name\": \"PageInfo\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"hasNextPage\": \"Boolean\",\n \"hasPreviousPage\": \"Boolean\"\n },\n \"implementsNode\": false\n};\n\nvar PaymentSettings = {\n \"name\": \"PaymentSettings\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"enabledPresentmentCurrencies\": \"CurrencyCode\"\n },\n \"implementsNode\": false\n};\n\nvar PricingPercentageValue = {\n \"name\": \"PricingPercentageValue\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"percentage\": \"Float\"\n },\n \"implementsNode\": false\n};\n\nvar PricingValue = {\n \"name\": \"PricingValue\",\n \"kind\": \"UNION\"\n};\n\nvar Product = {\n \"name\": \"Product\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"availableForSale\": \"Boolean\",\n \"createdAt\": \"DateTime\",\n \"description\": \"String\",\n \"descriptionHtml\": \"HTML\",\n \"handle\": \"String\",\n \"id\": \"ID\",\n \"images\": \"ImageConnection\",\n \"onlineStoreUrl\": \"URL\",\n \"options\": \"ProductOption\",\n \"productType\": \"String\",\n \"publishedAt\": \"DateTime\",\n \"title\": \"String\",\n \"updatedAt\": \"DateTime\",\n \"variants\": \"ProductVariantConnection\",\n \"vendor\": \"String\"\n },\n \"implementsNode\": true\n};\n\nvar ProductConnection = {\n \"name\": \"ProductConnection\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"edges\": \"ProductEdge\",\n \"pageInfo\": \"PageInfo\"\n },\n \"implementsNode\": false\n};\n\nvar ProductEdge = {\n \"name\": \"ProductEdge\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"cursor\": \"String\",\n \"node\": \"Product\"\n },\n \"implementsNode\": false\n};\n\nvar ProductOption = {\n \"name\": \"ProductOption\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"name\": \"String\",\n \"values\": \"String\"\n },\n \"implementsNode\": true\n};\n\nvar ProductVariant = {\n \"name\": \"ProductVariant\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"availableForSale\": \"Boolean\",\n \"compareAtPrice\": \"MoneyV2\",\n \"id\": \"ID\",\n \"image\": \"Image\",\n \"price\": \"MoneyV2\",\n \"product\": \"Product\",\n \"selectedOptions\": \"SelectedOption\",\n \"sku\": \"String\",\n \"title\": \"String\",\n \"unitPrice\": \"MoneyV2\",\n \"unitPriceMeasurement\": \"UnitPriceMeasurement\",\n \"weight\": \"Float\"\n },\n \"implementsNode\": true\n};\n\nvar ProductVariantConnection = {\n \"name\": \"ProductVariantConnection\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"edges\": \"ProductVariantEdge\",\n \"pageInfo\": \"PageInfo\"\n },\n \"implementsNode\": false\n};\n\nvar ProductVariantEdge = {\n \"name\": \"ProductVariantEdge\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"cursor\": \"String\",\n \"node\": \"ProductVariant\"\n },\n \"implementsNode\": false\n};\n\nvar QueryRoot = {\n \"name\": \"QueryRoot\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"collectionByHandle\": \"Collection\",\n \"collections\": \"CollectionConnection\",\n \"node\": \"Node\",\n \"nodes\": \"Node\",\n \"productByHandle\": \"Product\",\n \"productRecommendations\": \"Product\",\n \"products\": \"ProductConnection\",\n \"shop\": \"Shop\"\n },\n \"implementsNode\": false\n};\n\nvar ScriptDiscountApplication = {\n \"name\": \"ScriptDiscountApplication\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"title\": \"String\"\n },\n \"implementsNode\": false\n};\n\nvar SelectedOption = {\n \"name\": \"SelectedOption\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"name\": \"String\",\n \"value\": \"String\"\n },\n \"implementsNode\": false\n};\n\nvar ShippingRate = {\n \"name\": \"ShippingRate\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"handle\": \"String\",\n \"price\": \"MoneyV2\",\n \"title\": \"String\"\n },\n \"implementsNode\": false\n};\n\nvar Shop = {\n \"name\": \"Shop\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"description\": \"String\",\n \"moneyFormat\": \"String\",\n \"name\": \"String\",\n \"paymentSettings\": \"PaymentSettings\",\n \"primaryDomain\": \"Domain\",\n \"privacyPolicy\": \"ShopPolicy\",\n \"refundPolicy\": \"ShopPolicy\",\n \"termsOfService\": \"ShopPolicy\"\n },\n \"implementsNode\": true\n};\n\nvar ShopPolicy = {\n \"name\": \"ShopPolicy\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"body\": \"String\",\n \"id\": \"ID\",\n \"title\": \"String\",\n \"url\": \"URL\"\n },\n \"implementsNode\": true\n};\n\nvar String$1 = {\n \"name\": \"String\",\n \"kind\": \"SCALAR\"\n};\n\nvar URL = {\n \"name\": \"URL\",\n \"kind\": \"SCALAR\"\n};\n\nvar UnitPriceMeasurement = {\n \"name\": \"UnitPriceMeasurement\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"measuredType\": \"UnitPriceMeasurementMeasuredType\",\n \"quantityUnit\": \"UnitPriceMeasurementMeasuredUnit\",\n \"quantityValue\": \"Float\",\n \"referenceUnit\": \"UnitPriceMeasurementMeasuredUnit\",\n \"referenceValue\": \"Int\"\n },\n \"implementsNode\": false\n};\n\nvar UnitPriceMeasurementMeasuredType = {\n \"name\": \"UnitPriceMeasurementMeasuredType\",\n \"kind\": \"ENUM\"\n};\n\nvar UnitPriceMeasurementMeasuredUnit = {\n \"name\": \"UnitPriceMeasurementMeasuredUnit\",\n \"kind\": \"ENUM\"\n};\n\nvar UserError = {\n \"name\": \"UserError\",\n \"kind\": \"OBJECT\",\n \"fieldBaseTypes\": {\n \"field\": \"String\",\n \"message\": \"String\"\n },\n \"implementsNode\": false\n};\n\nvar Types = {\n types: {}\n};\nTypes.types[\"AppliedGiftCard\"] = AppliedGiftCard;\nTypes.types[\"Attribute\"] = Attribute;\nTypes.types[\"AutomaticDiscountApplication\"] = AutomaticDiscountApplication;\nTypes.types[\"Boolean\"] = Boolean$1;\nTypes.types[\"Checkout\"] = Checkout;\nTypes.types[\"CheckoutAttributesUpdateV2Payload\"] = CheckoutAttributesUpdateV2Payload;\nTypes.types[\"CheckoutCreatePayload\"] = CheckoutCreatePayload;\nTypes.types[\"CheckoutDiscountCodeApplyV2Payload\"] = CheckoutDiscountCodeApplyV2Payload;\nTypes.types[\"CheckoutDiscountCodeRemovePayload\"] = CheckoutDiscountCodeRemovePayload;\nTypes.types[\"CheckoutEmailUpdateV2Payload\"] = CheckoutEmailUpdateV2Payload;\nTypes.types[\"CheckoutErrorCode\"] = CheckoutErrorCode;\nTypes.types[\"CheckoutGiftCardRemoveV2Payload\"] = CheckoutGiftCardRemoveV2Payload;\nTypes.types[\"CheckoutGiftCardsAppendPayload\"] = CheckoutGiftCardsAppendPayload;\nTypes.types[\"CheckoutLineItem\"] = CheckoutLineItem;\nTypes.types[\"CheckoutLineItemConnection\"] = CheckoutLineItemConnection;\nTypes.types[\"CheckoutLineItemEdge\"] = CheckoutLineItemEdge;\nTypes.types[\"CheckoutLineItemsAddPayload\"] = CheckoutLineItemsAddPayload;\nTypes.types[\"CheckoutLineItemsRemovePayload\"] = CheckoutLineItemsRemovePayload;\nTypes.types[\"CheckoutLineItemsReplacePayload\"] = CheckoutLineItemsReplacePayload;\nTypes.types[\"CheckoutLineItemsUpdatePayload\"] = CheckoutLineItemsUpdatePayload;\nTypes.types[\"CheckoutShippingAddressUpdateV2Payload\"] = CheckoutShippingAddressUpdateV2Payload;\nTypes.types[\"CheckoutUserError\"] = CheckoutUserError;\nTypes.types[\"Collection\"] = Collection;\nTypes.types[\"CollectionConnection\"] = CollectionConnection;\nTypes.types[\"CollectionEdge\"] = CollectionEdge;\nTypes.types[\"CountryCode\"] = CountryCode;\nTypes.types[\"CurrencyCode\"] = CurrencyCode;\nTypes.types[\"DateTime\"] = DateTime;\nTypes.types[\"Decimal\"] = Decimal;\nTypes.types[\"DiscountAllocation\"] = DiscountAllocation;\nTypes.types[\"DiscountApplication\"] = DiscountApplication;\nTypes.types[\"DiscountApplicationAllocationMethod\"] = DiscountApplicationAllocationMethod;\nTypes.types[\"DiscountApplicationConnection\"] = DiscountApplicationConnection;\nTypes.types[\"DiscountApplicationEdge\"] = DiscountApplicationEdge;\nTypes.types[\"DiscountApplicationTargetSelection\"] = DiscountApplicationTargetSelection;\nTypes.types[\"DiscountApplicationTargetType\"] = DiscountApplicationTargetType;\nTypes.types[\"DiscountCodeApplication\"] = DiscountCodeApplication;\nTypes.types[\"Domain\"] = Domain;\nTypes.types[\"Float\"] = Float;\nTypes.types[\"HTML\"] = HTML;\nTypes.types[\"ID\"] = ID;\nTypes.types[\"Image\"] = Image;\nTypes.types[\"ImageConnection\"] = ImageConnection;\nTypes.types[\"ImageEdge\"] = ImageEdge;\nTypes.types[\"Int\"] = Int;\nTypes.types[\"MailingAddress\"] = MailingAddress;\nTypes.types[\"ManualDiscountApplication\"] = ManualDiscountApplication;\nTypes.types[\"MoneyV2\"] = MoneyV2;\nTypes.types[\"Mutation\"] = Mutation$1;\nTypes.types[\"Node\"] = Node;\nTypes.types[\"Order\"] = Order;\nTypes.types[\"OrderLineItem\"] = OrderLineItem;\nTypes.types[\"OrderLineItemConnection\"] = OrderLineItemConnection;\nTypes.types[\"OrderLineItemEdge\"] = OrderLineItemEdge;\nTypes.types[\"PageInfo\"] = PageInfo;\nTypes.types[\"PaymentSettings\"] = PaymentSettings;\nTypes.types[\"PricingPercentageValue\"] = PricingPercentageValue;\nTypes.types[\"PricingValue\"] = PricingValue;\nTypes.types[\"Product\"] = Product;\nTypes.types[\"ProductConnection\"] = ProductConnection;\nTypes.types[\"ProductEdge\"] = ProductEdge;\nTypes.types[\"ProductOption\"] = ProductOption;\nTypes.types[\"ProductVariant\"] = ProductVariant;\nTypes.types[\"ProductVariantConnection\"] = ProductVariantConnection;\nTypes.types[\"ProductVariantEdge\"] = ProductVariantEdge;\nTypes.types[\"QueryRoot\"] = QueryRoot;\nTypes.types[\"ScriptDiscountApplication\"] = ScriptDiscountApplication;\nTypes.types[\"SelectedOption\"] = SelectedOption;\nTypes.types[\"ShippingRate\"] = ShippingRate;\nTypes.types[\"Shop\"] = Shop;\nTypes.types[\"ShopPolicy\"] = ShopPolicy;\nTypes.types[\"String\"] = String$1;\nTypes.types[\"URL\"] = URL;\nTypes.types[\"UnitPriceMeasurement\"] = UnitPriceMeasurement;\nTypes.types[\"UnitPriceMeasurementMeasuredType\"] = UnitPriceMeasurementMeasuredType;\nTypes.types[\"UnitPriceMeasurementMeasuredUnit\"] = UnitPriceMeasurementMeasuredUnit;\nTypes.types[\"UserError\"] = UserError;\nTypes.queryType = \"QueryRoot\";\nTypes.mutationType = \"Mutation\";\nTypes.subscriptionType = null;\n\nfunction recursivelyFreezeObject(structure) {\n Object.getOwnPropertyNames(structure).forEach(function (key) {\n var value = structure[key];\n if (value && (typeof value === \"undefined\" ? \"undefined\" : _typeof(value)) === 'object') {\n recursivelyFreezeObject(value);\n }\n });\n Object.freeze(structure);\n return structure;\n}\n\nvar types = recursivelyFreezeObject(Types);\n\n// GraphQL\n/**\n * The JS Buy SDK Client.\n * @class\n *\n * @property {ProductResource} product The property under which product fetching methods live.\n * @property {CollectionResource} collection The property under which collection fetching methods live.\n * @property {ShopResource} shop The property under which shop fetching methods live.\n * @property {CheckoutResource} checkout The property under which shop fetching and mutating methods live.\n * @property {ImageResource} image The property under which image helper methods live.\n */\n\nvar Client = function () {\n createClass$1(Client, null, [{\n key: 'buildClient',\n\n\n /**\n * Primary entry point for building a new Client.\n */\n value: function buildClient(config, fetchFunction) {\n var newConfig = new Config(config);\n var client = new Client(newConfig, Client$2, fetchFunction);\n\n client.config = newConfig;\n\n return client;\n }\n\n /**\n * @constructs Client\n * @param {Config} config An instance of {@link Config} used to configure the Client.\n */\n\n }]);\n\n function Client(config) {\n var GraphQLClientClass = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : Client$2;\n var fetchFunction = arguments[2];\n classCallCheck$1(this, Client);\n\n var url = 'https://' + config.domain + '/api/' + config.apiVersion + '/graphql';\n\n var headers = {\n 'X-SDK-Variant': 'javascript',\n 'X-SDK-Version': version,\n 'X-Shopify-Storefront-Access-Token': config.storefrontAccessToken\n };\n\n if (config.source) {\n headers['X-SDK-Variant-Source'] = config.source;\n }\n\n var languageHeader = config.language ? config.language : '*';\n\n headers['Accept-Language'] = languageHeader;\n\n if (fetchFunction) {\n headers['Content-Type'] = 'application/json';\n headers.Accept = 'application/json';\n\n this.graphQLClient = new GraphQLClientClass(types, {\n fetcher: function fetcher(graphQLParams) {\n return fetchFunction(url, {\n body: JSON.stringify(graphQLParams),\n method: 'POST',\n mode: 'cors',\n headers: headers\n }).then(function (response) {\n return response.json();\n });\n }\n });\n } else {\n this.graphQLClient = new GraphQLClientClass(types, {\n url: url,\n fetcherOptions: { headers: headers }\n });\n }\n\n this.product = new ProductResource(this.graphQLClient);\n this.collection = new CollectionResource(this.graphQLClient);\n this.shop = new ShopResource(this.graphQLClient);\n this.checkout = new CheckoutResource(this.graphQLClient);\n this.image = new ImageResource(this.graphQLClient);\n }\n\n /**\n * Fetches the next page of models\n *\n * @example\n * client.fetchNextPage(products).then((nextProducts) => {\n * // Do something with the products\n * });\n *\n * @param {models} [Array] The paginated set to fetch the next page of\n * @return {Promise|GraphModel[]} A promise resolving with an array of `GraphModel`s of the type provided.\n */\n\n\n createClass$1(Client, [{\n key: 'fetchNextPage',\n value: function fetchNextPage(models) {\n return this.graphQLClient.fetchNextPage(models);\n }\n }]);\n return Client;\n}();\n\nmodule.exports = Client;\n//# sourceMappingURL=index.js.map\n"],"names":["_typeof","Symbol","iterator","obj","constructor","prototype","classCallCheck$1","instance","Constructor","TypeError","createClass$1","defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","protoProps","staticProps","inherits$1","subClass","superClass","create","value","setPrototypeOf","__proto__","possibleConstructorReturn$1","self","call","ReferenceError","join","_len","arguments","fields","Array","_key","isObject","Boolean","toString","valueOf","deepFreezeCopyExcept","predicate","structure","freeze","keys","reduce","copy","isArray","map","item","schemaForType","typeBundle","typeName","typeSchema","undefined","type","types","kind","Error","classCallCheck","createClass","_extends","assign","source","hasOwnProperty","inherits","possibleConstructorReturn","slicedToArray","arr","_arr","_n","_d","_e","_s","_i","next","done","push","err","sliceIterator","toConsumableArray","arr2","from","VariableDefinition","name","defaultValue","this","defaultValueString","formatInputValue","isVariable","isPrototypeOf","variable","Enum","Scalar","get","toInputValueString","String","JSON","stringify","apply","formatObject","openChar","closeChar","argPairs","noop","trackTypeDependency","trackFieldDependency","parseFieldCreationArgs","creationArgs","callback","options","selectionSet","_creationArgs","_creationArgs2","SelectionSet","emptyArgs","emptyDirectives","Field","alias","responseKey","args","directives","directiveStrings","directiveArgs","formatDirectives","Spread","InlineFragment","_Spread","_this","getPrototypeOf","FragmentSpread","_Spread2","fragmentDefinition","_this2","FragmentDefinition","spread","selectionsHaveIdField","selections","some","fieldOrFragment","implementsNode","selectionsHaveTypenameField","builderFunction","SelectionSetBuilder","unshift","selectionsByResponseKey","assignOrPush","unfrozenObject","acc","selection","forEach","indexSelectionsByResponseKey","field","selectionOrFieldName","rest","concat","hasSelectionWithResponseKey","_len2","_key2","parsedArgs","fieldBaseTypes","fieldBaseType","builderFunctionOrSelectionSet","_len3","_key3","add","_len4","_key4","_parseFieldCreationAr","connection","pageInfo","edges","addField","fieldTypeCb","inlineFragmentOn","fragmentSpread","VariableDefinitions","variableDefinitions","Operation","operationType","_parseArgs","variables","selectionSetCallback","_args","parseArgs","queryType","mutationType","nameString","Query","_Operation","_ref","Mutation","isAnonymous","operation","extractOperation","Function","bind","isInvalidOperationCombination","operations","hasAnonymousOperations","names","hasDuplicates","index","indexOf","hasDuplicateOperationNames","Document","definitions","addOperation","onType","existingDefinitions","definition","fragmentNameIsNotUnique","fragmentDefinitions","fragment","filter","GraphModel","attrs","ClassRegistry","classStore","isValue","arg","isNodeContext","context","nearestNode","parent","contextsFromRoot","contextsFromNearestNode","initializeDocumentAndVars","currentContext","contextChain","lastInChain","first","firstVar","find","addNextFieldTo","currentSelection","path","cursor","nextContext","shift","newSelection","nodeField","after","addConnection","collectFragments","toDefinition","nextPageQueryAndPath","nearestNodeContext","_document$definitions","nodeType","nodeId","responseData","id","_initializeDocumentAn","_initializeDocumentAn2","document","addQuery","root","node","addInlineFragmentOn","slice","fragments","_document$definitions2","_initializeDocumentAn3","_initializeDocumentAn4","hasNextPage$1","edge","hasNextPage","hasPreviousPage","transformConnections","variableValues","endsWith","isConnection","DecodingContext","nestedSelections","nextSelection","contextForObjectProperty","decodeContext","transformers","contextForArrayItem","decodeArrayItems","decodeObjectValues","transformer","runTransformers","generateRefetchQueries","refetchQuery","transformPojosToClassesWithRegistry","classRegistry","classForType","transformScalars","recordTypeInformation","_context$selection$se","__typename","decode","_ref$classRegistry","Client$2","Client","url","fetcherOptions","fetcher","_ref$registry","registry","graphQLParams","headers","fetch","body","method","mode","Accept","then","response","json","text","httpFetcher","request","otherProperties","operationOrDocument","query","operationName","documentOperation","data","model","nodeOrNodes","_node$nextPageQueryAn","_node$nextPageQueryAn2","send","object","paginatedModels","_ref2","pageSize","fetchNextPage","_ref3","pages","fetchAllPages","Promise","resolve","_ref4","enumFunction","Config","deprecatedProperties","console","warn","requiredProperties","apiVersion","language","accessToken","apiKey","Resource","client","graphQLClient","defaultErrors","message","defaultResolver","split","errors","reject","ref","_","fetchResourcesForProducts","productOrProduct","products","all","promiseAcc","product","images","variants","paginateProductConnectionsAndResolve","paginateCollectionsProductConnectionsAndResolve","collectionOrCollections","collections","collection","productHelpers","variantForOptions","variant","selectedOptions","every","selectedOption","spreads","__defaultOperation__","VariantFragment","defineFragment","price","compareAtPrice","image","unitPrice","unitPriceMeasurement","ProductFragment","addFragment","query$1","ids","nodes","query$2","sortKey","reverse","query$3","handle","productByHandle","query$4","productId","productRecommendations","ProductResource","_Resource","_ref$first","_ref$sortKey","query$$1","query$5","CollectionFragment","query$6","productsFirst","Collection","query$7","query$8","query$9","CollectionsProductsFragment","collectionByHandle","CollectionResource","_ref$productsFirst","_ref2$productsFirst","_ref3$first","_ref3$sortKey","query$10","shop","paymentSettings","primaryDomain","query$11","PolicyFragment","privacyPolicy","termsOfService","refundPolicy","ShopResource","handleCheckoutMutation","mutationRootKey","_ref$data","_ref$model","rootData","rootModel","checkout","lineItems","userErrors","checkoutUserErrors","query$12","DiscountApplicationFragment","MoneyV2","PricingPercentageValue","ManualDiscountApplication","DiscountCodeApplication","ScriptDiscountApplication","AutomaticDiscountApplication","AppliedGiftCardFragment","amountUsed","balance","presentmentAmountUsed","VariantWithProductFragment","MailingAddressFragment","CheckoutFragment","paymentDue","totalTax","lineItemsSubtotalPrice","subtotalPrice","totalPrice","discountApplications","appliedGiftCards","shippingAddress","shippingLine","customAttributes","order","totalShippingPrice","totalRefunded","discountAllocations","allocatedAmount","discountApplication","query$13","input","UserErrorFragment","CheckoutUserErrorFragment","addMutation","checkoutCreate","query$14","checkoutId","checkoutLineItemsAdd","query$15","lineItemIds","checkoutLineItemsRemove","query$16","checkoutLineItemsReplace","query$17","checkoutLineItemsUpdate","query$18","checkoutAttributesUpdateV2","query$19","checkoutDiscountCodeApplyV2","discountCode","query$20","checkoutDiscountCodeRemove","query$21","checkoutGiftCardsAppend","giftCardCodes","query$22","checkoutGiftCardRemoveV2","appliedGiftCardId","query$23","checkoutEmailUpdateV2","email","query$24","checkoutShippingAddressUpdateV2","CheckoutResource","imageHelpers","imageForSize","maxWidth","maxHeight","splitUrl","src","notQuery","imageTokens","imagePathIndex","ImageResource","Types","subscriptionType","recursivelyFreezeObject","getOwnPropertyNames","config","GraphQLClientClass","fetchFunction","domain","storefrontAccessToken","languageHeader","newConfig","models","module","exports"],"sourceRoot":""}