Michael Bromley 1 год назад
Родитель
Сommit
4955c048de

+ 3 - 0
docs/docs/reference/graphql-api/admin/enums.md

@@ -390,6 +390,7 @@ import MemberDescription from '@site/src/components/MemberDescription';
 <div class="graphql-code-line ">UNKNOWN_ERROR</div>
 <div class="graphql-code-line ">MIME_TYPE_ERROR</div>
 <div class="graphql-code-line ">LANGUAGE_NOT_AVAILABLE_ERROR</div>
+<div class="graphql-code-line ">DUPLICATE_ENTITY_ERROR</div>
 <div class="graphql-code-line ">FACET_IN_USE_ERROR</div>
 <div class="graphql-code-line ">CHANNEL_DEFAULT_LANGUAGE_ERROR</div>
 <div class="graphql-code-line ">SETTLE_PAYMENT_ERROR</div>
@@ -406,6 +407,7 @@ import MemberDescription from '@site/src/components/MemberDescription';
 <div class="graphql-code-line ">NOTHING_TO_REFUND_ERROR</div>
 <div class="graphql-code-line ">ALREADY_REFUNDED_ERROR</div>
 <div class="graphql-code-line ">QUANTITY_TOO_GREAT_ERROR</div>
+<div class="graphql-code-line ">REFUND_AMOUNT_ERROR</div>
 <div class="graphql-code-line ">REFUND_STATE_TRANSITION_ERROR</div>
 <div class="graphql-code-line ">PAYMENT_STATE_TRANSITION_ERROR</div>
 <div class="graphql-code-line ">FULFILLMENT_STATE_TRANSITION_ERROR</div>
@@ -477,6 +479,7 @@ import MemberDescription from '@site/src/components/MemberDescription';
 <div class="graphql-code-line ">ORDER_COUPON_APPLIED</div>
 <div class="graphql-code-line ">ORDER_COUPON_REMOVED</div>
 <div class="graphql-code-line ">ORDER_MODIFIED</div>
+<div class="graphql-code-line ">ORDER_CUSTOMER_UPDATED</div>
 <div class="graphql-code-line top-level">&#125;</div>
 
 </div>

+ 64 - 22
docs/docs/reference/graphql-api/admin/input-types.md

@@ -168,6 +168,15 @@ import MemberDescription from '@site/src/components/MemberDescription';
 
 <div class="graphql-code-line ">reason: <a href="/reference/graphql-api/admin/object-types#string">String</a></div>
 
+<div class="graphql-code-line comment">"""</div>
+<div class="graphql-code-line comment">The amount to be refunded to this particular Payment. This was introduced in</div>
+
+<div class="graphql-code-line comment">v2.2.0 as the preferred way to specify the refund amount. The `lines`, <code>shipping</code> and `adjustment`</div>
+
+<div class="graphql-code-line comment">fields will be removed in a future version.</div>
+<div class="graphql-code-line comment">"""</div>
+<div class="graphql-code-line ">amount: <a href="/reference/graphql-api/admin/object-types#money">Money</a></div>
+
 
 <div class="graphql-code-line top-level">&#125;</div>
 
@@ -850,17 +859,6 @@ import MemberDescription from '@site/src/components/MemberDescription';
 ## CreateAddressInput
 
 <div class="graphql-code-block">
-<div class="graphql-code-line top-level comment">"""</div>
-<div class="graphql-code-line top-level comment">Input used to create an Address.</div>
-
-<div class="graphql-code-line top-level comment"></div>
-
-<div class="graphql-code-line top-level comment">The countryCode must correspond to a <code>code</code> property of a Country that has been defined in the</div>
-
-<div class="graphql-code-line top-level comment">Vendure server. The <code>code</code> property is typically a 2-character ISO code such as "GB", "US", "DE" etc.</div>
-
-<div class="graphql-code-line top-level comment">If an invalid code is passed, the mutation will fail.</div>
-<div class="graphql-code-line top-level comment">"""</div>
 <div class="graphql-code-line top-level">input <span class="graphql-code-identifier">CreateAddressInput</span>
  &#123;</div>
 <div class="graphql-code-line ">fullName: <a href="/reference/graphql-api/admin/object-types#string">String</a></div>
@@ -1720,6 +1718,22 @@ import MemberDescription from '@site/src/components/MemberDescription';
 <div class="graphql-code-line ">transferToLocationId: <a href="/reference/graphql-api/admin/object-types#id">ID</a></div>
 
 
+<div class="graphql-code-line top-level">&#125;</div>
+
+</div>
+
+## DuplicateEntityInput
+
+<div class="graphql-code-block">
+<div class="graphql-code-line top-level">input <span class="graphql-code-identifier">DuplicateEntityInput</span>
+ &#123;</div>
+<div class="graphql-code-line ">entityName: <a href="/reference/graphql-api/admin/object-types#string">String</a>!</div>
+
+<div class="graphql-code-line ">entityId: <a href="/reference/graphql-api/admin/object-types#id">ID</a>!</div>
+
+<div class="graphql-code-line ">duplicatorInput: <a href="/reference/graphql-api/admin/input-types#configurableoperationinput">ConfigurableOperationInput</a>!</div>
+
+
 <div class="graphql-code-line top-level">&#125;</div>
 
 </div>
@@ -2236,12 +2250,24 @@ import MemberDescription from '@site/src/components/MemberDescription';
 
 <div class="graphql-code-line ">note: <a href="/reference/graphql-api/admin/object-types#string">String</a></div>
 
+<div class="graphql-code-line comment">"""</div>
+<div class="graphql-code-line comment">Deprecated in v2.2.0. Use <code>refunds</code> instead to allow multiple refunds to be</div>
+
+<div class="graphql-code-line comment">applied in the case that multiple payment methods have been used on the order.</div>
+<div class="graphql-code-line comment">"""</div>
 <div class="graphql-code-line ">refund: <a href="/reference/graphql-api/admin/input-types#administratorrefundinput">AdministratorRefundInput</a></div>
 
+<div class="graphql-code-line ">refunds: [<a href="/reference/graphql-api/admin/input-types#administratorrefundinput">AdministratorRefundInput</a>!]</div>
+
 <div class="graphql-code-line ">options: <a href="/reference/graphql-api/admin/input-types#modifyorderoptions">ModifyOrderOptions</a></div>
 
 <div class="graphql-code-line ">couponCodes: [<a href="/reference/graphql-api/admin/object-types#string">String</a>!]</div>
 
+<div class="graphql-code-line comment">"""</div>
+<div class="graphql-code-line comment">Added in v2.2</div>
+<div class="graphql-code-line comment">"""</div>
+<div class="graphql-code-line ">shippingMethodIds: [<a href="/reference/graphql-api/admin/object-types#id">ID</a>!]</div>
+
 
 <div class="graphql-code-line top-level">&#125;</div>
 
@@ -3159,6 +3185,17 @@ import MemberDescription from '@site/src/components/MemberDescription';
 
 <div class="graphql-code-line ">adjustment: <a href="/reference/graphql-api/admin/object-types#money">Money</a>!</div>
 
+<div class="graphql-code-line comment">"""</div>
+<div class="graphql-code-line comment">If an amount is specified, this value will be used to create a Refund rather than calculating the</div>
+
+<div class="graphql-code-line comment">amount automatically. This was added in v2.2 and will be the preferred way to specify the refund</div>
+
+<div class="graphql-code-line comment">amount in the future. The `lines`, <code>shipping</code> and <code>adjustment</code> fields will likely be removed in a future</div>
+
+<div class="graphql-code-line comment">version.</div>
+<div class="graphql-code-line comment">"""</div>
+<div class="graphql-code-line ">amount: <a href="/reference/graphql-api/admin/object-types#money">Money</a></div>
+
 <div class="graphql-code-line ">paymentId: <a href="/reference/graphql-api/admin/object-types#id">ID</a>!</div>
 
 <div class="graphql-code-line ">reason: <a href="/reference/graphql-api/admin/object-types#string">String</a></div>
@@ -3476,6 +3513,22 @@ import MemberDescription from '@site/src/components/MemberDescription';
 <div class="graphql-code-line ">name: <a href="/reference/graphql-api/admin/enums#sortorder">SortOrder</a></div>
 
 
+<div class="graphql-code-line top-level">&#125;</div>
+
+</div>
+
+## SetOrderCustomerInput
+
+<div class="graphql-code-block">
+<div class="graphql-code-line top-level">input <span class="graphql-code-identifier">SetOrderCustomerInput</span>
+ &#123;</div>
+<div class="graphql-code-line ">orderId: <a href="/reference/graphql-api/admin/object-types#id">ID</a>!</div>
+
+<div class="graphql-code-line ">customerId: <a href="/reference/graphql-api/admin/object-types#id">ID</a>!</div>
+
+<div class="graphql-code-line ">note: <a href="/reference/graphql-api/admin/object-types#string">String</a></div>
+
+
 <div class="graphql-code-line top-level">&#125;</div>
 
 </div>
@@ -4080,17 +4133,6 @@ import MemberDescription from '@site/src/components/MemberDescription';
 ## UpdateAddressInput
 
 <div class="graphql-code-block">
-<div class="graphql-code-line top-level comment">"""</div>
-<div class="graphql-code-line top-level comment">Input used to update an Address.</div>
-
-<div class="graphql-code-line top-level comment"></div>
-
-<div class="graphql-code-line top-level comment">The countryCode must correspond to a <code>code</code> property of a Country that has been defined in the</div>
-
-<div class="graphql-code-line top-level comment">Vendure server. The <code>code</code> property is typically a 2-character ISO code such as "GB", "US", "DE" etc.</div>
-
-<div class="graphql-code-line top-level comment">If an invalid code is passed, the mutation will fail.</div>
-<div class="graphql-code-line top-level comment">"""</div>
 <div class="graphql-code-line top-level">input <span class="graphql-code-identifier">UpdateAddressInput</span>
  &#123;</div>
 <div class="graphql-code-line ">id: <a href="/reference/graphql-api/admin/object-types#id">ID</a>!</div>

+ 23 - 0
docs/docs/reference/graphql-api/admin/mutations.md

@@ -1225,6 +1225,16 @@ import MemberDescription from '@site/src/components/MemberDescription';
 <div class="graphql-code-line ">deleteZones(ids: [<a href="/reference/graphql-api/admin/object-types#id">ID</a>!]!): [<a href="/reference/graphql-api/admin/object-types#deletionresponse">DeletionResponse</a>!]!</div>
 
 
+<div class="graphql-code-line top-level">&#125;</div>
+</div>
+
+## duplicateEntity
+<div class="graphql-code-block">
+<div class="graphql-code-line top-level">type <span class="graphql-code-identifier">Mutation</span>
+ &#123;</div>
+<div class="graphql-code-line ">duplicateEntity(input: <a href="/reference/graphql-api/admin/input-types#duplicateentityinput">DuplicateEntityInput</a>!): <a href="/reference/graphql-api/admin/object-types#duplicateentityresult">DuplicateEntityResult</a>!</div>
+
+
 <div class="graphql-code-line top-level">&#125;</div>
 </div>
 
@@ -1586,6 +1596,19 @@ import MemberDescription from '@site/src/components/MemberDescription';
 <div class="graphql-code-line ">setOrderCustomFields(input: <a href="/reference/graphql-api/admin/input-types#updateorderinput">UpdateOrderInput</a>!): <a href="/reference/graphql-api/admin/object-types#order">Order</a></div>
 
 
+<div class="graphql-code-line top-level">&#125;</div>
+</div>
+
+## setOrderCustomer
+<div class="graphql-code-block">
+<div class="graphql-code-line top-level comment">"""</div>
+<div class="graphql-code-line top-level comment">Allows a different Customer to be assigned to an Order. Added in v2.2.0.</div>
+<div class="graphql-code-line top-level comment">"""</div>
+<div class="graphql-code-line top-level">type <span class="graphql-code-identifier">Mutation</span>
+ &#123;</div>
+<div class="graphql-code-line ">setOrderCustomer(input: <a href="/reference/graphql-api/admin/input-types#setordercustomerinput">SetOrderCustomerInput</a>!): <a href="/reference/graphql-api/admin/object-types#order">Order</a></div>
+
+
 <div class="graphql-code-line top-level">&#125;</div>
 </div>
 

+ 121 - 11
docs/docs/reference/graphql-api/admin/object-types.md

@@ -282,6 +282,8 @@ import MemberDescription from '@site/src/components/MemberDescription';
 
 <div class="graphql-code-line ">nullable: <a href="/reference/graphql-api/admin/object-types#boolean">Boolean</a></div>
 
+<div class="graphql-code-line ">requiresPermission: [<a href="/reference/graphql-api/admin/enums#permission">Permission</a>!]</div>
+
 <div class="graphql-code-line ">ui: <a href="/reference/graphql-api/admin/object-types#json">JSON</a></div>
 
 
@@ -649,15 +651,6 @@ import MemberDescription from '@site/src/components/MemberDescription';
 ## Country
 
 <div class="graphql-code-block">
-<div class="graphql-code-line top-level comment">"""</div>
-<div class="graphql-code-line top-level comment">A Country of the world which your shop operates in.</div>
-
-<div class="graphql-code-line top-level comment"></div>
-
-<div class="graphql-code-line top-level comment">The <code>code</code> field is typically a 2-character ISO code such as "GB", "US", "DE" etc. This code is used in certain inputs such as</div>
-
-<div class="graphql-code-line top-level comment">`UpdateAddressInput` and <code>CreateAddressInput</code> to specify the country.</div>
-<div class="graphql-code-line top-level comment">"""</div>
 <div class="graphql-code-line top-level">type <span class="graphql-code-identifier">Country</span>
  &#123;</div>
 <div class="graphql-code-line ">id: <a href="/reference/graphql-api/admin/object-types#id">ID</a>!</div>
@@ -855,6 +848,11 @@ import MemberDescription from '@site/src/components/MemberDescription';
 ## CustomFields
 
 <div class="graphql-code-block">
+<div class="graphql-code-line top-level comment">"""</div>
+<div class="graphql-code-line top-level comment">This type is deprecated in v2.2 in favor of the EntityCustomFields type,</div>
+
+<div class="graphql-code-line top-level comment">which allows custom fields to be defined on user-supplies entities.</div>
+<div class="graphql-code-line top-level comment">"""</div>
 <div class="graphql-code-line top-level">type <span class="graphql-code-identifier">CustomFields</span>
  &#123;</div>
 <div class="graphql-code-line ">Address: [<a href="/reference/graphql-api/admin/object-types#customfieldconfig">CustomFieldConfig</a>!]!</div>
@@ -893,6 +891,8 @@ import MemberDescription from '@site/src/components/MemberDescription';
 
 <div class="graphql-code-line ">ProductVariant: [<a href="/reference/graphql-api/admin/object-types#customfieldconfig">CustomFieldConfig</a>!]!</div>
 
+<div class="graphql-code-line ">ProductVariantPrice: [<a href="/reference/graphql-api/admin/object-types#customfieldconfig">CustomFieldConfig</a>!]!</div>
+
 <div class="graphql-code-line ">Promotion: [<a href="/reference/graphql-api/admin/object-types#customfieldconfig">CustomFieldConfig</a>!]!</div>
 
 <div class="graphql-code-line ">Region: [<a href="/reference/graphql-api/admin/object-types#customfieldconfig">CustomFieldConfig</a>!]!</div>
@@ -1036,6 +1036,8 @@ import MemberDescription from '@site/src/components/MemberDescription';
 
 <div class="graphql-code-line ">nullable: <a href="/reference/graphql-api/admin/object-types#boolean">Boolean</a></div>
 
+<div class="graphql-code-line ">requiresPermission: [<a href="/reference/graphql-api/admin/enums#permission">Permission</a>!]</div>
+
 <div class="graphql-code-line ">min: <a href="/reference/graphql-api/admin/object-types#string">String</a></div>
 
 <div class="graphql-code-line ">max: <a href="/reference/graphql-api/admin/object-types#string">String</a></div>
@@ -1077,6 +1079,41 @@ import MemberDescription from '@site/src/components/MemberDescription';
 <div class="graphql-code-line ">amountWithTax: <a href="/reference/graphql-api/admin/object-types#money">Money</a>!</div>
 
 
+<div class="graphql-code-line top-level">&#125;</div>
+</div>
+
+## DuplicateEntityError
+
+<div class="graphql-code-block">
+<div class="graphql-code-line top-level">type <span class="graphql-code-identifier">DuplicateEntityError</span>
+ &#123;</div>
+<div class="graphql-code-line ">errorCode: <a href="/reference/graphql-api/admin/enums#errorcode">ErrorCode</a>!</div>
+
+<div class="graphql-code-line ">message: <a href="/reference/graphql-api/admin/object-types#string">String</a>!</div>
+
+<div class="graphql-code-line ">duplicationError: <a href="/reference/graphql-api/admin/object-types#string">String</a>!</div>
+
+
+<div class="graphql-code-line top-level">&#125;</div>
+</div>
+
+## DuplicateEntityResult
+
+<div class="graphql-code-block">
+<div class="graphql-code-line top-level">union <span class="graphql-code-identifier">DuplicateEntityResult</span>
+ =</div>
+<div class="graphql-code-line "><a href="/reference/graphql-api/admin/object-types#duplicateentitysuccess">DuplicateEntitySuccess</a> | <a href="/reference/graphql-api/admin/object-types#duplicateentityerror">DuplicateEntityError</a></div>
+
+</div>
+
+## DuplicateEntitySuccess
+
+<div class="graphql-code-block">
+<div class="graphql-code-line top-level">type <span class="graphql-code-identifier">DuplicateEntitySuccess</span>
+ &#123;</div>
+<div class="graphql-code-line ">newEntityId: <a href="/reference/graphql-api/admin/object-types#id">ID</a>!</div>
+
+
 <div class="graphql-code-line top-level">&#125;</div>
 </div>
 
@@ -1109,6 +1146,38 @@ import MemberDescription from '@site/src/components/MemberDescription';
 <div class="graphql-code-line ">message: <a href="/reference/graphql-api/admin/object-types#string">String</a>!</div>
 
 
+<div class="graphql-code-line top-level">&#125;</div>
+</div>
+
+## EntityCustomFields
+
+<div class="graphql-code-block">
+<div class="graphql-code-line top-level">type <span class="graphql-code-identifier">EntityCustomFields</span>
+ &#123;</div>
+<div class="graphql-code-line ">entityName: <a href="/reference/graphql-api/admin/object-types#string">String</a>!</div>
+
+<div class="graphql-code-line ">customFields: [<a href="/reference/graphql-api/admin/object-types#customfieldconfig">CustomFieldConfig</a>!]!</div>
+
+
+<div class="graphql-code-line top-level">&#125;</div>
+</div>
+
+## EntityDuplicatorDefinition
+
+<div class="graphql-code-block">
+<div class="graphql-code-line top-level">type <span class="graphql-code-identifier">EntityDuplicatorDefinition</span>
+ &#123;</div>
+<div class="graphql-code-line ">code: <a href="/reference/graphql-api/admin/object-types#string">String</a>!</div>
+
+<div class="graphql-code-line ">args: [<a href="/reference/graphql-api/admin/object-types#configargdefinition">ConfigArgDefinition</a>!]!</div>
+
+<div class="graphql-code-line ">description: <a href="/reference/graphql-api/admin/object-types#string">String</a>!</div>
+
+<div class="graphql-code-line ">forEntities: [<a href="/reference/graphql-api/admin/object-types#string">String</a>!]!</div>
+
+<div class="graphql-code-line ">requiresPermission: [<a href="/reference/graphql-api/admin/enums#permission">Permission</a>!]!</div>
+
+
 <div class="graphql-code-line top-level">&#125;</div>
 </div>
 
@@ -1308,6 +1377,8 @@ import MemberDescription from '@site/src/components/MemberDescription';
 
 <div class="graphql-code-line ">nullable: <a href="/reference/graphql-api/admin/object-types#boolean">Boolean</a></div>
 
+<div class="graphql-code-line ">requiresPermission: [<a href="/reference/graphql-api/admin/enums#permission">Permission</a>!]</div>
+
 <div class="graphql-code-line ">min: <a href="/reference/graphql-api/admin/object-types#float">Float</a></div>
 
 <div class="graphql-code-line ">max: <a href="/reference/graphql-api/admin/object-types#float">Float</a></div>
@@ -1587,6 +1658,8 @@ import MemberDescription from '@site/src/components/MemberDescription';
 
 <div class="graphql-code-line ">nullable: <a href="/reference/graphql-api/admin/object-types#boolean">Boolean</a></div>
 
+<div class="graphql-code-line ">requiresPermission: [<a href="/reference/graphql-api/admin/enums#permission">Permission</a>!]</div>
+
 <div class="graphql-code-line ">min: <a href="/reference/graphql-api/admin/object-types#int">Int</a></div>
 
 <div class="graphql-code-line ">max: <a href="/reference/graphql-api/admin/object-types#int">Int</a></div>
@@ -1777,6 +1850,8 @@ import MemberDescription from '@site/src/components/MemberDescription';
 
 <div class="graphql-code-line ">nullable: <a href="/reference/graphql-api/admin/object-types#boolean">Boolean</a></div>
 
+<div class="graphql-code-line ">requiresPermission: [<a href="/reference/graphql-api/admin/enums#permission">Permission</a>!]</div>
+
 <div class="graphql-code-line ">pattern: <a href="/reference/graphql-api/admin/object-types#string">String</a></div>
 
 <div class="graphql-code-line ">ui: <a href="/reference/graphql-api/admin/object-types#json">JSON</a></div>
@@ -1806,6 +1881,8 @@ import MemberDescription from '@site/src/components/MemberDescription';
 
 <div class="graphql-code-line ">nullable: <a href="/reference/graphql-api/admin/object-types#boolean">Boolean</a></div>
 
+<div class="graphql-code-line ">requiresPermission: [<a href="/reference/graphql-api/admin/enums#permission">Permission</a>!]</div>
+
 <div class="graphql-code-line ">ui: <a href="/reference/graphql-api/admin/object-types#json">JSON</a></div>
 
 
@@ -1911,7 +1988,7 @@ import MemberDescription from '@site/src/components/MemberDescription';
 <div class="graphql-code-block">
 <div class="graphql-code-line top-level">union <span class="graphql-code-identifier">ModifyOrderResult</span>
  =</div>
-<div class="graphql-code-line "><a href="/reference/graphql-api/admin/object-types#order">Order</a> | <a href="/reference/graphql-api/admin/object-types#nochangesspecifiederror">NoChangesSpecifiedError</a> | <a href="/reference/graphql-api/admin/object-types#ordermodificationstateerror">OrderModificationStateError</a> | <a href="/reference/graphql-api/admin/object-types#paymentmethodmissingerror">PaymentMethodMissingError</a> | <a href="/reference/graphql-api/admin/object-types#refundpaymentidmissingerror">RefundPaymentIdMissingError</a> | <a href="/reference/graphql-api/admin/object-types#orderlimiterror">OrderLimitError</a> | <a href="/reference/graphql-api/admin/object-types#negativequantityerror">NegativeQuantityError</a> | <a href="/reference/graphql-api/admin/object-types#insufficientstockerror">InsufficientStockError</a> | <a href="/reference/graphql-api/admin/object-types#couponcodeexpirederror">CouponCodeExpiredError</a> | <a href="/reference/graphql-api/admin/object-types#couponcodeinvaliderror">CouponCodeInvalidError</a> | <a href="/reference/graphql-api/admin/object-types#couponcodelimiterror">CouponCodeLimitError</a></div>
+<div class="graphql-code-line "><a href="/reference/graphql-api/admin/object-types#order">Order</a> | <a href="/reference/graphql-api/admin/object-types#nochangesspecifiederror">NoChangesSpecifiedError</a> | <a href="/reference/graphql-api/admin/object-types#ordermodificationstateerror">OrderModificationStateError</a> | <a href="/reference/graphql-api/admin/object-types#paymentmethodmissingerror">PaymentMethodMissingError</a> | <a href="/reference/graphql-api/admin/object-types#refundpaymentidmissingerror">RefundPaymentIdMissingError</a> | <a href="/reference/graphql-api/admin/object-types#orderlimiterror">OrderLimitError</a> | <a href="/reference/graphql-api/admin/object-types#negativequantityerror">NegativeQuantityError</a> | <a href="/reference/graphql-api/admin/object-types#insufficientstockerror">InsufficientStockError</a> | <a href="/reference/graphql-api/admin/object-types#couponcodeexpirederror">CouponCodeExpiredError</a> | <a href="/reference/graphql-api/admin/object-types#couponcodeinvaliderror">CouponCodeInvalidError</a> | <a href="/reference/graphql-api/admin/object-types#couponcodelimiterror">CouponCodeLimitError</a> | <a href="/reference/graphql-api/admin/object-types#ineligibleshippingmethoderror">IneligibleShippingMethodError</a></div>
 
 </div>
 
@@ -3001,6 +3078,8 @@ import MemberDescription from '@site/src/components/MemberDescription';
 
 <div class="graphql-code-line ">price: <a href="/reference/graphql-api/admin/object-types#money">Money</a>!</div>
 
+<div class="graphql-code-line ">customFields: <a href="/reference/graphql-api/admin/object-types#json">JSON</a></div>
+
 
 <div class="graphql-code-line top-level">&#125;</div>
 </div>
@@ -3193,6 +3272,24 @@ import MemberDescription from '@site/src/components/MemberDescription';
 <div class="graphql-code-line ">metadata: <a href="/reference/graphql-api/admin/object-types#json">JSON</a></div>
 
 
+<div class="graphql-code-line top-level">&#125;</div>
+</div>
+
+## RefundAmountError
+
+<div class="graphql-code-block">
+<div class="graphql-code-line top-level comment">"""</div>
+<div class="graphql-code-line top-level comment">Returned if <code>amount</code> is greater than the maximum un-refunded amount of the Payment</div>
+<div class="graphql-code-line top-level comment">"""</div>
+<div class="graphql-code-line top-level">type <span class="graphql-code-identifier">RefundAmountError</span>
+ &#123;</div>
+<div class="graphql-code-line ">errorCode: <a href="/reference/graphql-api/admin/enums#errorcode">ErrorCode</a>!</div>
+
+<div class="graphql-code-line ">message: <a href="/reference/graphql-api/admin/object-types#string">String</a>!</div>
+
+<div class="graphql-code-line ">maximumRefundable: <a href="/reference/graphql-api/admin/object-types#int">Int</a>!</div>
+
+
 <div class="graphql-code-line top-level">&#125;</div>
 </div>
 
@@ -3220,7 +3317,7 @@ import MemberDescription from '@site/src/components/MemberDescription';
 <div class="graphql-code-block">
 <div class="graphql-code-line top-level">union <span class="graphql-code-identifier">RefundOrderResult</span>
  =</div>
-<div class="graphql-code-line "><a href="/reference/graphql-api/admin/object-types#refund">Refund</a> | <a href="/reference/graphql-api/admin/object-types#quantitytoogreaterror">QuantityTooGreatError</a> | <a href="/reference/graphql-api/admin/object-types#nothingtorefunderror">NothingToRefundError</a> | <a href="/reference/graphql-api/admin/object-types#orderstatetransitionerror">OrderStateTransitionError</a> | <a href="/reference/graphql-api/admin/object-types#multipleordererror">MultipleOrderError</a> | <a href="/reference/graphql-api/admin/object-types#paymentordermismatcherror">PaymentOrderMismatchError</a> | <a href="/reference/graphql-api/admin/object-types#refundorderstateerror">RefundOrderStateError</a> | <a href="/reference/graphql-api/admin/object-types#alreadyrefundederror">AlreadyRefundedError</a> | <a href="/reference/graphql-api/admin/object-types#refundstatetransitionerror">RefundStateTransitionError</a></div>
+<div class="graphql-code-line "><a href="/reference/graphql-api/admin/object-types#refund">Refund</a> | <a href="/reference/graphql-api/admin/object-types#quantitytoogreaterror">QuantityTooGreatError</a> | <a href="/reference/graphql-api/admin/object-types#nothingtorefunderror">NothingToRefundError</a> | <a href="/reference/graphql-api/admin/object-types#orderstatetransitionerror">OrderStateTransitionError</a> | <a href="/reference/graphql-api/admin/object-types#multipleordererror">MultipleOrderError</a> | <a href="/reference/graphql-api/admin/object-types#paymentordermismatcherror">PaymentOrderMismatchError</a> | <a href="/reference/graphql-api/admin/object-types#refundorderstateerror">RefundOrderStateError</a> | <a href="/reference/graphql-api/admin/object-types#alreadyrefundederror">AlreadyRefundedError</a> | <a href="/reference/graphql-api/admin/object-types#refundstatetransitionerror">RefundStateTransitionError</a> | <a href="/reference/graphql-api/admin/object-types#refundamounterror">RefundAmountError</a></div>
 
 </div>
 
@@ -3322,6 +3419,8 @@ import MemberDescription from '@site/src/components/MemberDescription';
 
 <div class="graphql-code-line ">nullable: <a href="/reference/graphql-api/admin/object-types#boolean">Boolean</a></div>
 
+<div class="graphql-code-line ">requiresPermission: [<a href="/reference/graphql-api/admin/enums#permission">Permission</a>!]</div>
+
 <div class="graphql-code-line ">entity: <a href="/reference/graphql-api/admin/object-types#string">String</a>!</div>
 
 <div class="graphql-code-line ">scalarFields: [<a href="/reference/graphql-api/admin/object-types#string">String</a>!]!</div>
@@ -3612,8 +3711,15 @@ import MemberDescription from '@site/src/components/MemberDescription';
 
 <div class="graphql-code-line ">moneyStrategyPrecision: <a href="/reference/graphql-api/admin/object-types#int">Int</a>!</div>
 
+<div class="graphql-code-line comment">"""</div>
+<div class="graphql-code-line comment">This field is deprecated in v2.2 in favor of the entityCustomFields field,</div>
+
+<div class="graphql-code-line comment">which allows custom fields to be defined on user-supplies entities.</div>
+<div class="graphql-code-line comment">"""</div>
 <div class="graphql-code-line ">customFieldConfig: <a href="/reference/graphql-api/admin/object-types#customfields">CustomFields</a>!</div>
 
+<div class="graphql-code-line ">entityCustomFields: [<a href="/reference/graphql-api/admin/object-types#entitycustomfields">EntityCustomFields</a>!]!</div>
+
 
 <div class="graphql-code-line top-level">&#125;</div>
 </div>
@@ -3938,6 +4044,8 @@ import MemberDescription from '@site/src/components/MemberDescription';
 
 <div class="graphql-code-line ">nullable: <a href="/reference/graphql-api/admin/object-types#boolean">Boolean</a></div>
 
+<div class="graphql-code-line ">requiresPermission: [<a href="/reference/graphql-api/admin/enums#permission">Permission</a>!]</div>
+
 <div class="graphql-code-line ">pattern: <a href="/reference/graphql-api/admin/object-types#string">String</a></div>
 
 <div class="graphql-code-line ">options: [<a href="/reference/graphql-api/admin/object-types#stringfieldoption">StringFieldOption</a>!]</div>
@@ -4170,6 +4278,8 @@ import MemberDescription from '@site/src/components/MemberDescription';
 
 <div class="graphql-code-line ">nullable: <a href="/reference/graphql-api/admin/object-types#boolean">Boolean</a></div>
 
+<div class="graphql-code-line ">requiresPermission: [<a href="/reference/graphql-api/admin/enums#permission">Permission</a>!]</div>
+
 <div class="graphql-code-line ">ui: <a href="/reference/graphql-api/admin/object-types#json">JSON</a></div>
 
 

+ 10 - 0
docs/docs/reference/graphql-api/admin/queries.md

@@ -199,6 +199,16 @@ import MemberDescription from '@site/src/components/MemberDescription';
 <div class="graphql-code-line ">eligibleShippingMethodsForDraftOrder(orderId: <a href="/reference/graphql-api/admin/object-types#id">ID</a>!): [<a href="/reference/graphql-api/admin/object-types#shippingmethodquote">ShippingMethodQuote</a>!]!</div>
 
 
+<div class="graphql-code-line top-level">&#125;</div>
+</div>
+
+## entityDuplicators
+<div class="graphql-code-block">
+<div class="graphql-code-line top-level">type <span class="graphql-code-identifier">Query</span>
+ &#123;</div>
+<div class="graphql-code-line ">entityDuplicators: [<a href="/reference/graphql-api/admin/object-types#entityduplicatordefinition">EntityDuplicatorDefinition</a>!]!</div>
+
+
 <div class="graphql-code-line top-level">&#125;</div>
 </div>
 

+ 1 - 0
docs/docs/reference/graphql-api/shop/enums.md

@@ -464,6 +464,7 @@ import MemberDescription from '@site/src/components/MemberDescription';
 <div class="graphql-code-line ">ORDER_COUPON_APPLIED</div>
 <div class="graphql-code-line ">ORDER_COUPON_REMOVED</div>
 <div class="graphql-code-line ">ORDER_MODIFIED</div>
+<div class="graphql-code-line ">ORDER_CUSTOMER_UPDATED</div>
 <div class="graphql-code-line top-level">&#125;</div>
 
 </div>

+ 0 - 22
docs/docs/reference/graphql-api/shop/input-types.md

@@ -183,17 +183,6 @@ import MemberDescription from '@site/src/components/MemberDescription';
 ## CreateAddressInput
 
 <div class="graphql-code-block">
-<div class="graphql-code-line top-level comment">"""</div>
-<div class="graphql-code-line top-level comment">Input used to create an Address.</div>
-
-<div class="graphql-code-line top-level comment"></div>
-
-<div class="graphql-code-line top-level comment">The countryCode must correspond to a <code>code</code> property of a Country that has been defined in the</div>
-
-<div class="graphql-code-line top-level comment">Vendure server. The <code>code</code> property is typically a 2-character ISO code such as "GB", "US", "DE" etc.</div>
-
-<div class="graphql-code-line top-level comment">If an invalid code is passed, the mutation will fail.</div>
-<div class="graphql-code-line top-level comment">"""</div>
 <div class="graphql-code-line top-level">input <span class="graphql-code-identifier">CreateAddressInput</span>
  &#123;</div>
 <div class="graphql-code-line ">fullName: <a href="/reference/graphql-api/shop/object-types#string">String</a></div>
@@ -1207,17 +1196,6 @@ import MemberDescription from '@site/src/components/MemberDescription';
 ## UpdateAddressInput
 
 <div class="graphql-code-block">
-<div class="graphql-code-line top-level comment">"""</div>
-<div class="graphql-code-line top-level comment">Input used to update an Address.</div>
-
-<div class="graphql-code-line top-level comment"></div>
-
-<div class="graphql-code-line top-level comment">The countryCode must correspond to a <code>code</code> property of a Country that has been defined in the</div>
-
-<div class="graphql-code-line top-level comment">Vendure server. The <code>code</code> property is typically a 2-character ISO code such as "GB", "US", "DE" etc.</div>
-
-<div class="graphql-code-line top-level comment">If an invalid code is passed, the mutation will fail.</div>
-<div class="graphql-code-line top-level comment">"""</div>
 <div class="graphql-code-line top-level">input <span class="graphql-code-identifier">UpdateAddressInput</span>
  &#123;</div>
 <div class="graphql-code-line ">id: <a href="/reference/graphql-api/shop/object-types#id">ID</a>!</div>

+ 18 - 9
docs/docs/reference/graphql-api/shop/object-types.md

@@ -219,6 +219,8 @@ import MemberDescription from '@site/src/components/MemberDescription';
 
 <div class="graphql-code-line ">nullable: <a href="/reference/graphql-api/shop/object-types#boolean">Boolean</a></div>
 
+<div class="graphql-code-line ">requiresPermission: [<a href="/reference/graphql-api/shop/enums#permission">Permission</a>!]</div>
+
 <div class="graphql-code-line ">ui: <a href="/reference/graphql-api/shop/object-types#json">JSON</a></div>
 
 
@@ -470,15 +472,6 @@ import MemberDescription from '@site/src/components/MemberDescription';
 ## Country
 
 <div class="graphql-code-block">
-<div class="graphql-code-line top-level comment">"""</div>
-<div class="graphql-code-line top-level comment">A Country of the world which your shop operates in.</div>
-
-<div class="graphql-code-line top-level comment"></div>
-
-<div class="graphql-code-line top-level comment">The <code>code</code> field is typically a 2-character ISO code such as "GB", "US", "DE" etc. This code is used in certain inputs such as</div>
-
-<div class="graphql-code-line top-level comment">`UpdateAddressInput` and <code>CreateAddressInput</code> to specify the country.</div>
-<div class="graphql-code-line top-level comment">"""</div>
 <div class="graphql-code-line top-level">type <span class="graphql-code-identifier">Country</span>
  &#123;</div>
 <div class="graphql-code-line ">id: <a href="/reference/graphql-api/shop/object-types#id">ID</a>!</div>
@@ -723,6 +716,8 @@ import MemberDescription from '@site/src/components/MemberDescription';
 
 <div class="graphql-code-line ">nullable: <a href="/reference/graphql-api/shop/object-types#boolean">Boolean</a></div>
 
+<div class="graphql-code-line ">requiresPermission: [<a href="/reference/graphql-api/shop/enums#permission">Permission</a>!]</div>
+
 <div class="graphql-code-line ">min: <a href="/reference/graphql-api/shop/object-types#string">String</a></div>
 
 <div class="graphql-code-line ">max: <a href="/reference/graphql-api/shop/object-types#string">String</a></div>
@@ -958,6 +953,8 @@ import MemberDescription from '@site/src/components/MemberDescription';
 
 <div class="graphql-code-line ">nullable: <a href="/reference/graphql-api/shop/object-types#boolean">Boolean</a></div>
 
+<div class="graphql-code-line ">requiresPermission: [<a href="/reference/graphql-api/shop/enums#permission">Permission</a>!]</div>
+
 <div class="graphql-code-line ">min: <a href="/reference/graphql-api/shop/object-types#float">Float</a></div>
 
 <div class="graphql-code-line ">max: <a href="/reference/graphql-api/shop/object-types#float">Float</a></div>
@@ -1199,6 +1196,8 @@ import MemberDescription from '@site/src/components/MemberDescription';
 
 <div class="graphql-code-line ">nullable: <a href="/reference/graphql-api/shop/object-types#boolean">Boolean</a></div>
 
+<div class="graphql-code-line ">requiresPermission: [<a href="/reference/graphql-api/shop/enums#permission">Permission</a>!]</div>
+
 <div class="graphql-code-line ">min: <a href="/reference/graphql-api/shop/object-types#int">Int</a></div>
 
 <div class="graphql-code-line ">max: <a href="/reference/graphql-api/shop/object-types#int">Int</a></div>
@@ -1263,6 +1262,8 @@ import MemberDescription from '@site/src/components/MemberDescription';
 
 <div class="graphql-code-line ">nullable: <a href="/reference/graphql-api/shop/object-types#boolean">Boolean</a></div>
 
+<div class="graphql-code-line ">requiresPermission: [<a href="/reference/graphql-api/shop/enums#permission">Permission</a>!]</div>
+
 <div class="graphql-code-line ">pattern: <a href="/reference/graphql-api/shop/object-types#string">String</a></div>
 
 <div class="graphql-code-line ">ui: <a href="/reference/graphql-api/shop/object-types#json">JSON</a></div>
@@ -1292,6 +1293,8 @@ import MemberDescription from '@site/src/components/MemberDescription';
 
 <div class="graphql-code-line ">nullable: <a href="/reference/graphql-api/shop/object-types#boolean">Boolean</a></div>
 
+<div class="graphql-code-line ">requiresPermission: [<a href="/reference/graphql-api/shop/enums#permission">Permission</a>!]</div>
+
 <div class="graphql-code-line ">ui: <a href="/reference/graphql-api/shop/object-types#json">JSON</a></div>
 
 
@@ -2534,6 +2537,8 @@ import MemberDescription from '@site/src/components/MemberDescription';
 
 <div class="graphql-code-line ">nullable: <a href="/reference/graphql-api/shop/object-types#boolean">Boolean</a></div>
 
+<div class="graphql-code-line ">requiresPermission: [<a href="/reference/graphql-api/shop/enums#permission">Permission</a>!]</div>
+
 <div class="graphql-code-line ">entity: <a href="/reference/graphql-api/shop/object-types#string">String</a>!</div>
 
 <div class="graphql-code-line ">scalarFields: [<a href="/reference/graphql-api/shop/object-types#string">String</a>!]!</div>
@@ -2921,6 +2926,8 @@ import MemberDescription from '@site/src/components/MemberDescription';
 
 <div class="graphql-code-line ">nullable: <a href="/reference/graphql-api/shop/object-types#boolean">Boolean</a></div>
 
+<div class="graphql-code-line ">requiresPermission: [<a href="/reference/graphql-api/shop/enums#permission">Permission</a>!]</div>
+
 <div class="graphql-code-line ">pattern: <a href="/reference/graphql-api/shop/object-types#string">String</a></div>
 
 <div class="graphql-code-line ">options: [<a href="/reference/graphql-api/shop/object-types#stringfieldoption">StringFieldOption</a>!]</div>
@@ -3112,6 +3119,8 @@ import MemberDescription from '@site/src/components/MemberDescription';
 
 <div class="graphql-code-line ">nullable: <a href="/reference/graphql-api/shop/object-types#boolean">Boolean</a></div>
 
+<div class="graphql-code-line ">requiresPermission: [<a href="/reference/graphql-api/shop/enums#permission">Permission</a>!]</div>
+
 <div class="graphql-code-line ">ui: <a href="/reference/graphql-api/shop/object-types#json">JSON</a></div>