@vendure/core 3.2.0 → 3.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +42 -42
- package/README.md +11 -11
- package/dist/api/config/generate-error-code-enum.js +3 -3
- package/dist/api/config/generate-permissions.js +29 -29
- package/dist/api/config/graphql-custom-fields.js +158 -158
- package/dist/api/schema/admin-api/administrator.api.graphql +47 -47
- package/dist/api/schema/admin-api/administrator.type.graphql +14 -14
- package/dist/api/schema/admin-api/asset.api.graphql +68 -68
- package/dist/api/schema/admin-api/auth.api.graphql +22 -22
- package/dist/api/schema/admin-api/channel.api.graphql +69 -69
- package/dist/api/schema/admin-api/collection-admin.type.graphql +4 -4
- package/dist/api/schema/admin-api/collection.api.graphql +94 -94
- package/dist/api/schema/admin-api/country.api.graphql +41 -41
- package/dist/api/schema/admin-api/customer-admin.type.graphql +4 -4
- package/dist/api/schema/admin-api/customer-group.api.graphql +37 -37
- package/dist/api/schema/admin-api/customer.api.graphql +63 -63
- package/dist/api/schema/admin-api/duplicate-entity.api.graphql +40 -40
- package/dist/api/schema/admin-api/facet-admin.type.graphql +3 -3
- package/dist/api/schema/admin-api/facet.api.graphql +100 -100
- package/dist/api/schema/admin-api/global-settings.api.graphql +26 -26
- package/dist/api/schema/admin-api/global-settings.type.graphql +28 -28
- package/dist/api/schema/admin-api/history-entry-admin.type.graphql +4 -4
- package/dist/api/schema/admin-api/import.api.graphql +3 -3
- package/dist/api/schema/admin-api/import.type.graphql +5 -5
- package/dist/api/schema/admin-api/job.api.graphql +63 -63
- package/dist/api/schema/admin-api/order-admin.type.graphql +37 -37
- package/dist/api/schema/admin-api/order.api.graphql +463 -463
- package/dist/api/schema/admin-api/payment-method.api.graphql +65 -65
- package/dist/api/schema/admin-api/payment.api.graphql +2 -2
- package/dist/api/schema/admin-api/product-admin.type.graphql +21 -21
- package/dist/api/schema/admin-api/product-option-group.api.graphql +58 -58
- package/dist/api/schema/admin-api/product-search-admin.type.graphql +5 -5
- package/dist/api/schema/admin-api/product-search.api.graphql +10 -10
- package/dist/api/schema/admin-api/product.api.graphql +225 -225
- package/dist/api/schema/admin-api/promotion.api.graphql +70 -70
- package/dist/api/schema/admin-api/province.api.graphql +37 -37
- package/dist/api/schema/admin-api/role.api.graphql +33 -33
- package/dist/api/schema/admin-api/seller.api.graphql +31 -31
- package/dist/api/schema/admin-api/shipping-method.api.graphql +91 -91
- package/dist/api/schema/admin-api/stock-level.type.graphql +9 -9
- package/dist/api/schema/admin-api/stock-location.api.graphql +51 -51
- package/dist/api/schema/admin-api/stock-location.type.graphql +7 -7
- package/dist/api/schema/admin-api/stock-movement.type.graphql +80 -80
- package/dist/api/schema/admin-api/tag.api.graphql +25 -25
- package/dist/api/schema/admin-api/tax-category.api.graphql +36 -36
- package/dist/api/schema/admin-api/tax-rate.api.graphql +37 -37
- package/dist/api/schema/admin-api/zone.api.graphql +42 -42
- package/dist/api/schema/common/address.type.graphql +16 -16
- package/dist/api/schema/common/asset.type.graphql +31 -31
- package/dist/api/schema/common/auth.type.graphql +12 -12
- package/dist/api/schema/common/channel.type.graphql +24 -24
- package/dist/api/schema/common/collection.type.graphql +40 -40
- package/dist/api/schema/common/common-enums.graphql +35 -35
- package/dist/api/schema/common/common-error-results.graphql +107 -107
- package/dist/api/schema/common/common-types.graphql +285 -285
- package/dist/api/schema/common/currency-code.graphql +322 -322
- package/dist/api/schema/common/custom-field-types.graphql +265 -265
- package/dist/api/schema/common/customer-group.type.graphql +10 -10
- package/dist/api/schema/common/customer.type.graphql +18 -18
- package/dist/api/schema/common/facet-value.type.graphql +19 -19
- package/dist/api/schema/common/facet.type.graphql +35 -35
- package/dist/api/schema/common/history-entry.type.graphql +43 -43
- package/dist/api/schema/common/language-code.graphql +325 -325
- package/dist/api/schema/common/order.type.graphql +257 -257
- package/dist/api/schema/common/payment-method.type.graphql +21 -21
- package/dist/api/schema/common/product-option-group.type.graphql +38 -38
- package/dist/api/schema/common/product-search.type.graphql +69 -69
- package/dist/api/schema/common/product.type.graphql +70 -70
- package/dist/api/schema/common/promotion.type.graphql +31 -31
- package/dist/api/schema/common/region.type.graphql +65 -65
- package/dist/api/schema/common/role.type.graphql +14 -14
- package/dist/api/schema/common/seller.type.graphql +6 -6
- package/dist/api/schema/common/shipping-method.type.graphql +27 -27
- package/dist/api/schema/common/tag.type.graphql +11 -11
- package/dist/api/schema/common/tax-category.type.graphql +7 -7
- package/dist/api/schema/common/tax-rate.type.graphql +16 -16
- package/dist/api/schema/common/user.type.graphql +17 -17
- package/dist/api/schema/common/zone.type.graphql +8 -8
- package/dist/api/schema/shop-api/shop-error-results.graphql +114 -114
- package/dist/api/schema/shop-api/shop.api.graphql +287 -287
- package/dist/config/auth/native-authentication-strategy.js +5 -5
- package/dist/i18n/messages/de.json +117 -117
- package/dist/i18n/messages/en.json +140 -140
- package/dist/i18n/messages/es.json +38 -38
- package/dist/i18n/messages/fr.json +138 -138
- package/dist/i18n/messages/pt_BR.json +99 -99
- package/dist/i18n/messages/pt_PT.json +118 -118
- package/dist/i18n/messages/ru.json +118 -118
- package/dist/i18n/messages/uk.json +118 -118
- package/dist/migrate.js +15 -15
- package/dist/plugin/default-search-plugin/api/api-extensions.js +8 -8
- package/dist/plugin/default-search-plugin/search-strategy/mysql-search-strategy.js +3 -3
- package/dist/plugin/default-search-plugin/search-strategy/postgres-search-strategy.js +5 -5
- package/dist/plugin/default-search-plugin/search-strategy/sqlite-search-strategy.js +4 -4
- package/package.json +4 -4
- package/cli/cli-utils.d.ts +0 -1
- package/cli/cli-utils.js +0 -8
- package/cli/cli-utils.js.map +0 -1
- package/cli/vendure-cli.d.ts +0 -2
- package/cli/vendure-cli.js +0 -119
- package/cli/vendure-cli.js.map +0 -1
|
@@ -1,287 +1,287 @@
|
|
|
1
|
-
type Query {
|
|
2
|
-
"The active Channel"
|
|
3
|
-
activeChannel: Channel!
|
|
4
|
-
"The active Customer"
|
|
5
|
-
activeCustomer: Customer
|
|
6
|
-
"""
|
|
7
|
-
The active Order. Will be `null` until an Order is created via `addItemToOrder`. Once an Order reaches the
|
|
8
|
-
state of `PaymentAuthorized` or `PaymentSettled`, then that Order is no longer considered "active" and this
|
|
9
|
-
query will once again return `null`.
|
|
10
|
-
"""
|
|
11
|
-
activeOrder: Order
|
|
12
|
-
"An array of supported Countries"
|
|
13
|
-
availableCountries: [Country!]!
|
|
14
|
-
"A list of Collections available to the shop"
|
|
15
|
-
collections(options: CollectionListOptions): CollectionList!
|
|
16
|
-
"Returns a Collection either by its id or slug. If neither 'id' nor 'slug' is specified, an error will result."
|
|
17
|
-
collection(id: ID, slug: String): Collection
|
|
18
|
-
"Returns a list of eligible shipping methods based on the current active Order"
|
|
19
|
-
eligibleShippingMethods: [ShippingMethodQuote!]!
|
|
20
|
-
"Returns a list of payment methods and their eligibility based on the current active Order"
|
|
21
|
-
eligiblePaymentMethods: [PaymentMethodQuote!]!
|
|
22
|
-
"A list of Facets available to the shop"
|
|
23
|
-
facets(options: FacetListOptions): FacetList!
|
|
24
|
-
"Returns a Facet by its id"
|
|
25
|
-
facet(id: ID!): Facet
|
|
26
|
-
"Returns information about the current authenticated User"
|
|
27
|
-
me: CurrentUser
|
|
28
|
-
"Returns the possible next states that the activeOrder can transition to"
|
|
29
|
-
nextOrderStates: [String!]!
|
|
30
|
-
"""
|
|
31
|
-
Returns an Order based on the id. Note that in the Shop API, only orders belonging to the
|
|
32
|
-
currently-authenticated User may be queried.
|
|
33
|
-
"""
|
|
34
|
-
order(id: ID!): Order
|
|
35
|
-
"""
|
|
36
|
-
Returns an Order based on the order `code`. For guest Orders (i.e. Orders placed by non-authenticated Customers)
|
|
37
|
-
this query will only return the Order within 2 hours of the Order being placed. This allows an Order confirmation
|
|
38
|
-
screen to be shown immediately after completion of a guest checkout, yet prevents security risks of allowing
|
|
39
|
-
general anonymous access to Order data.
|
|
40
|
-
"""
|
|
41
|
-
orderByCode(code: String!): Order
|
|
42
|
-
"Get a Product either by id or slug. If neither 'id' nor 'slug' is specified, an error will result."
|
|
43
|
-
product(id: ID, slug: String): Product
|
|
44
|
-
"Get a list of Products"
|
|
45
|
-
products(options: ProductListOptions): ProductList!
|
|
46
|
-
"Search Products based on the criteria set by the `SearchInput`"
|
|
47
|
-
search(input: SearchInput!): SearchResponse!
|
|
48
|
-
"Get active payment methods"
|
|
49
|
-
activePaymentMethods: [PublicPaymentMethod]!
|
|
50
|
-
"Get active shipping methods"
|
|
51
|
-
activeShippingMethods: [PublicShippingMethod]!
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
type PublicPaymentMethod {
|
|
55
|
-
id: ID!
|
|
56
|
-
code: String!
|
|
57
|
-
name: String!
|
|
58
|
-
description: String
|
|
59
|
-
translations: [PaymentMethodTranslation!]!
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
type PublicShippingMethod {
|
|
63
|
-
id: ID!
|
|
64
|
-
code: String!
|
|
65
|
-
name: String!
|
|
66
|
-
description: String
|
|
67
|
-
translations: [ShippingMethodTranslation!]!
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
type Mutation {
|
|
71
|
-
"Adds an item to the Order. If custom fields are defined on the OrderLine entity, a third argument 'customFields' will be available."
|
|
72
|
-
addItemToOrder(productVariantId: ID!, quantity: Int!): UpdateOrderItemsResult!
|
|
73
|
-
"Remove an OrderLine from the Order"
|
|
74
|
-
removeOrderLine(orderLineId: ID!): RemoveOrderItemsResult!
|
|
75
|
-
"Remove all OrderLine from the Order"
|
|
76
|
-
removeAllOrderLines: RemoveOrderItemsResult!
|
|
77
|
-
"Adjusts an OrderLine. If custom fields are defined on the OrderLine entity, a third argument 'customFields' of type `OrderLineCustomFieldsInput` will be available."
|
|
78
|
-
adjustOrderLine(orderLineId: ID!, quantity: Int!): UpdateOrderItemsResult!
|
|
79
|
-
"Applies the given coupon code to the active Order"
|
|
80
|
-
applyCouponCode(couponCode: String!): ApplyCouponCodeResult!
|
|
81
|
-
"Removes the given coupon code from the active Order"
|
|
82
|
-
removeCouponCode(couponCode: String!): Order
|
|
83
|
-
"Transitions an Order to a new state. Valid next states can be found by querying `nextOrderStates`"
|
|
84
|
-
transitionOrderToState(state: String!): TransitionOrderToStateResult
|
|
85
|
-
"Sets the shipping address for the active Order"
|
|
86
|
-
setOrderShippingAddress(input: CreateAddressInput!): ActiveOrderResult!
|
|
87
|
-
"Sets the billing address for the active Order"
|
|
88
|
-
setOrderBillingAddress(input: CreateAddressInput!): ActiveOrderResult!
|
|
89
|
-
"Unsets the shipping address for the active Order. Available since version 3.1.0"
|
|
90
|
-
unsetOrderShippingAddress: ActiveOrderResult!
|
|
91
|
-
"Unsets the billing address for the active Order. Available since version 3.1.0"
|
|
92
|
-
unsetOrderBillingAddress: ActiveOrderResult!
|
|
93
|
-
"Allows any custom fields to be set for the active Order"
|
|
94
|
-
setOrderCustomFields(input: UpdateOrderInput!): ActiveOrderResult!
|
|
95
|
-
"""
|
|
96
|
-
Sets the shipping method by id, which can be obtained with the `eligibleShippingMethods` query.
|
|
97
|
-
An Order can have multiple shipping methods, in which case you can pass an array of ids. In this case,
|
|
98
|
-
you should configure a custom ShippingLineAssignmentStrategy in order to know which OrderLines each
|
|
99
|
-
shipping method will apply to.
|
|
100
|
-
"""
|
|
101
|
-
setOrderShippingMethod(shippingMethodId: [ID!]!): SetOrderShippingMethodResult!
|
|
102
|
-
"Add a Payment to the Order"
|
|
103
|
-
addPaymentToOrder(input: PaymentInput!): AddPaymentToOrderResult!
|
|
104
|
-
"Set the Customer for the Order. Required only if the Customer is not currently logged in"
|
|
105
|
-
setCustomerForOrder(input: CreateCustomerInput!): SetCustomerForOrderResult!
|
|
106
|
-
"""
|
|
107
|
-
Authenticates the user using the native authentication strategy. This mutation is an alias for authenticate({ native: { ... }})
|
|
108
|
-
|
|
109
|
-
The `rememberMe` option applies when using cookie-based sessions, and if `true` it will set the maxAge of the session cookie
|
|
110
|
-
to 1 year.
|
|
111
|
-
"""
|
|
112
|
-
login(username: String!, password: String!, rememberMe: Boolean): NativeAuthenticationResult!
|
|
113
|
-
"Authenticates the user using a named authentication strategy"
|
|
114
|
-
authenticate(input: AuthenticationInput!, rememberMe: Boolean): AuthenticationResult!
|
|
115
|
-
"End the current authenticated session"
|
|
116
|
-
logout: Success!
|
|
117
|
-
"""
|
|
118
|
-
Register a Customer account with the given credentials. There are three possible registration flows:
|
|
119
|
-
|
|
120
|
-
_If `authOptions.requireVerification` is set to `true`:_
|
|
121
|
-
|
|
122
|
-
1. **The Customer is registered _with_ a password**. A verificationToken will be created (and typically emailed to the Customer). That
|
|
123
|
-
verificationToken would then be passed to the `verifyCustomerAccount` mutation _without_ a password. The Customer is then
|
|
124
|
-
verified and authenticated in one step.
|
|
125
|
-
2. **The Customer is registered _without_ a password**. A verificationToken will be created (and typically emailed to the Customer). That
|
|
126
|
-
verificationToken would then be passed to the `verifyCustomerAccount` mutation _with_ the chosen password of the Customer. The Customer is then
|
|
127
|
-
verified and authenticated in one step.
|
|
128
|
-
|
|
129
|
-
_If `authOptions.requireVerification` is set to `false`:_
|
|
130
|
-
|
|
131
|
-
3. The Customer _must_ be registered _with_ a password. No further action is needed - the Customer is able to authenticate immediately.
|
|
132
|
-
"""
|
|
133
|
-
registerCustomerAccount(input: RegisterCustomerInput!): RegisterCustomerAccountResult!
|
|
134
|
-
"Regenerate and send a verification token for a new Customer registration. Only applicable if `authOptions.requireVerification` is set to true."
|
|
135
|
-
refreshCustomerVerification(emailAddress: String!): RefreshCustomerVerificationResult!
|
|
136
|
-
"Update an existing Customer"
|
|
137
|
-
updateCustomer(input: UpdateCustomerInput!): Customer!
|
|
138
|
-
"Create a new Customer Address"
|
|
139
|
-
createCustomerAddress(input: CreateAddressInput!): Address!
|
|
140
|
-
"Update an existing Address"
|
|
141
|
-
updateCustomerAddress(input: UpdateAddressInput!): Address!
|
|
142
|
-
"Delete an existing Address"
|
|
143
|
-
deleteCustomerAddress(id: ID!): Success!
|
|
144
|
-
"""
|
|
145
|
-
Verify a Customer email address with the token sent to that address. Only applicable if `authOptions.requireVerification` is set to true.
|
|
146
|
-
|
|
147
|
-
If the Customer was not registered with a password in the `registerCustomerAccount` mutation, the password _must_ be
|
|
148
|
-
provided here.
|
|
149
|
-
"""
|
|
150
|
-
verifyCustomerAccount(token: String!, password: String): VerifyCustomerAccountResult!
|
|
151
|
-
"Update the password of the active Customer"
|
|
152
|
-
updateCustomerPassword(currentPassword: String!, newPassword: String!): UpdateCustomerPasswordResult!
|
|
153
|
-
"""
|
|
154
|
-
Request to update the emailAddress of the active Customer. If `authOptions.requireVerification` is enabled
|
|
155
|
-
(as is the default), then the `identifierChangeToken` will be assigned to the current User and
|
|
156
|
-
a IdentifierChangeRequestEvent will be raised. This can then be used e.g. by the EmailPlugin to email
|
|
157
|
-
that verification token to the Customer, which is then used to verify the change of email address.
|
|
158
|
-
"""
|
|
159
|
-
requestUpdateCustomerEmailAddress(
|
|
160
|
-
password: String!
|
|
161
|
-
newEmailAddress: String!
|
|
162
|
-
): RequestUpdateCustomerEmailAddressResult!
|
|
163
|
-
"""
|
|
164
|
-
Confirm the update of the emailAddress with the provided token, which has been generated by the
|
|
165
|
-
`requestUpdateCustomerEmailAddress` mutation.
|
|
166
|
-
"""
|
|
167
|
-
updateCustomerEmailAddress(token: String!): UpdateCustomerEmailAddressResult!
|
|
168
|
-
"Requests a password reset email to be sent"
|
|
169
|
-
requestPasswordReset(emailAddress: String!): RequestPasswordResetResult
|
|
170
|
-
"Resets a Customer's password based on the provided token"
|
|
171
|
-
resetPassword(token: String!, password: String!): ResetPasswordResult!
|
|
172
|
-
}
|
|
173
|
-
|
|
174
|
-
# Populated at run-time
|
|
175
|
-
input AuthenticationInput
|
|
176
|
-
|
|
177
|
-
input RegisterCustomerInput {
|
|
178
|
-
emailAddress: String!
|
|
179
|
-
title: String
|
|
180
|
-
firstName: String
|
|
181
|
-
lastName: String
|
|
182
|
-
phoneNumber: String
|
|
183
|
-
password: String
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
input UpdateCustomerInput {
|
|
187
|
-
title: String
|
|
188
|
-
firstName: String
|
|
189
|
-
lastName: String
|
|
190
|
-
phoneNumber: String
|
|
191
|
-
}
|
|
192
|
-
|
|
193
|
-
# Populated with any custom fields at run-time
|
|
194
|
-
input UpdateOrderInput
|
|
195
|
-
|
|
196
|
-
"""
|
|
197
|
-
Passed as input to the `addPaymentToOrder` mutation.
|
|
198
|
-
"""
|
|
199
|
-
input PaymentInput {
|
|
200
|
-
"""
|
|
201
|
-
This field should correspond to the `code` property of a PaymentMethod.
|
|
202
|
-
"""
|
|
203
|
-
method: String!
|
|
204
|
-
"""
|
|
205
|
-
This field should contain arbitrary data passed to the specified PaymentMethodHandler's `createPayment()` method
|
|
206
|
-
as the "metadata" argument. For example, it could contain an ID for the payment and other
|
|
207
|
-
data generated by the payment provider.
|
|
208
|
-
"""
|
|
209
|
-
metadata: JSON!
|
|
210
|
-
}
|
|
211
|
-
|
|
212
|
-
# generated by generateListOptions function
|
|
213
|
-
input CollectionListOptions {
|
|
214
|
-
topLevelOnly: Boolean
|
|
215
|
-
}
|
|
216
|
-
|
|
217
|
-
# generated by generateListOptions function
|
|
218
|
-
input FacetListOptions
|
|
219
|
-
|
|
220
|
-
# generated by generateListOptions function
|
|
221
|
-
input OrderListOptions
|
|
222
|
-
|
|
223
|
-
# generated by generateListOptions function
|
|
224
|
-
input ProductListOptions
|
|
225
|
-
|
|
226
|
-
# generated by generateListOptions function
|
|
227
|
-
input ProductVariantListOptions
|
|
228
|
-
|
|
229
|
-
union AddPaymentToOrderResult =
|
|
230
|
-
| Order
|
|
231
|
-
| OrderPaymentStateError
|
|
232
|
-
| IneligiblePaymentMethodError
|
|
233
|
-
| PaymentFailedError
|
|
234
|
-
| PaymentDeclinedError
|
|
235
|
-
| OrderStateTransitionError
|
|
236
|
-
| NoActiveOrderError
|
|
237
|
-
union TransitionOrderToStateResult = Order | OrderStateTransitionError
|
|
238
|
-
union SetCustomerForOrderResult =
|
|
239
|
-
| Order
|
|
240
|
-
| AlreadyLoggedInError
|
|
241
|
-
| EmailAddressConflictError
|
|
242
|
-
| NoActiveOrderError
|
|
243
|
-
| GuestCheckoutError
|
|
244
|
-
union RegisterCustomerAccountResult =
|
|
245
|
-
| Success
|
|
246
|
-
| MissingPasswordError
|
|
247
|
-
| PasswordValidationError
|
|
248
|
-
| NativeAuthStrategyError
|
|
249
|
-
union RefreshCustomerVerificationResult = Success | NativeAuthStrategyError
|
|
250
|
-
union VerifyCustomerAccountResult =
|
|
251
|
-
| CurrentUser
|
|
252
|
-
| VerificationTokenInvalidError
|
|
253
|
-
| VerificationTokenExpiredError
|
|
254
|
-
| MissingPasswordError
|
|
255
|
-
| PasswordValidationError
|
|
256
|
-
| PasswordAlreadySetError
|
|
257
|
-
| NativeAuthStrategyError
|
|
258
|
-
union UpdateCustomerPasswordResult =
|
|
259
|
-
| Success
|
|
260
|
-
| InvalidCredentialsError
|
|
261
|
-
| PasswordValidationError
|
|
262
|
-
| NativeAuthStrategyError
|
|
263
|
-
union RequestUpdateCustomerEmailAddressResult =
|
|
264
|
-
| Success
|
|
265
|
-
| InvalidCredentialsError
|
|
266
|
-
| EmailAddressConflictError
|
|
267
|
-
| NativeAuthStrategyError
|
|
268
|
-
union UpdateCustomerEmailAddressResult =
|
|
269
|
-
| Success
|
|
270
|
-
| IdentifierChangeTokenInvalidError
|
|
271
|
-
| IdentifierChangeTokenExpiredError
|
|
272
|
-
| NativeAuthStrategyError
|
|
273
|
-
union RequestPasswordResetResult = Success | NativeAuthStrategyError
|
|
274
|
-
union ResetPasswordResult =
|
|
275
|
-
| CurrentUser
|
|
276
|
-
| PasswordResetTokenInvalidError
|
|
277
|
-
| PasswordResetTokenExpiredError
|
|
278
|
-
| PasswordValidationError
|
|
279
|
-
| NativeAuthStrategyError
|
|
280
|
-
| NotVerifiedError
|
|
281
|
-
union NativeAuthenticationResult =
|
|
282
|
-
| CurrentUser
|
|
283
|
-
| InvalidCredentialsError
|
|
284
|
-
| NotVerifiedError
|
|
285
|
-
| NativeAuthStrategyError
|
|
286
|
-
union AuthenticationResult = CurrentUser | InvalidCredentialsError | NotVerifiedError
|
|
287
|
-
union ActiveOrderResult = Order | NoActiveOrderError
|
|
1
|
+
type Query {
|
|
2
|
+
"The active Channel"
|
|
3
|
+
activeChannel: Channel!
|
|
4
|
+
"The active Customer"
|
|
5
|
+
activeCustomer: Customer
|
|
6
|
+
"""
|
|
7
|
+
The active Order. Will be `null` until an Order is created via `addItemToOrder`. Once an Order reaches the
|
|
8
|
+
state of `PaymentAuthorized` or `PaymentSettled`, then that Order is no longer considered "active" and this
|
|
9
|
+
query will once again return `null`.
|
|
10
|
+
"""
|
|
11
|
+
activeOrder: Order
|
|
12
|
+
"An array of supported Countries"
|
|
13
|
+
availableCountries: [Country!]!
|
|
14
|
+
"A list of Collections available to the shop"
|
|
15
|
+
collections(options: CollectionListOptions): CollectionList!
|
|
16
|
+
"Returns a Collection either by its id or slug. If neither 'id' nor 'slug' is specified, an error will result."
|
|
17
|
+
collection(id: ID, slug: String): Collection
|
|
18
|
+
"Returns a list of eligible shipping methods based on the current active Order"
|
|
19
|
+
eligibleShippingMethods: [ShippingMethodQuote!]!
|
|
20
|
+
"Returns a list of payment methods and their eligibility based on the current active Order"
|
|
21
|
+
eligiblePaymentMethods: [PaymentMethodQuote!]!
|
|
22
|
+
"A list of Facets available to the shop"
|
|
23
|
+
facets(options: FacetListOptions): FacetList!
|
|
24
|
+
"Returns a Facet by its id"
|
|
25
|
+
facet(id: ID!): Facet
|
|
26
|
+
"Returns information about the current authenticated User"
|
|
27
|
+
me: CurrentUser
|
|
28
|
+
"Returns the possible next states that the activeOrder can transition to"
|
|
29
|
+
nextOrderStates: [String!]!
|
|
30
|
+
"""
|
|
31
|
+
Returns an Order based on the id. Note that in the Shop API, only orders belonging to the
|
|
32
|
+
currently-authenticated User may be queried.
|
|
33
|
+
"""
|
|
34
|
+
order(id: ID!): Order
|
|
35
|
+
"""
|
|
36
|
+
Returns an Order based on the order `code`. For guest Orders (i.e. Orders placed by non-authenticated Customers)
|
|
37
|
+
this query will only return the Order within 2 hours of the Order being placed. This allows an Order confirmation
|
|
38
|
+
screen to be shown immediately after completion of a guest checkout, yet prevents security risks of allowing
|
|
39
|
+
general anonymous access to Order data.
|
|
40
|
+
"""
|
|
41
|
+
orderByCode(code: String!): Order
|
|
42
|
+
"Get a Product either by id or slug. If neither 'id' nor 'slug' is specified, an error will result."
|
|
43
|
+
product(id: ID, slug: String): Product
|
|
44
|
+
"Get a list of Products"
|
|
45
|
+
products(options: ProductListOptions): ProductList!
|
|
46
|
+
"Search Products based on the criteria set by the `SearchInput`"
|
|
47
|
+
search(input: SearchInput!): SearchResponse!
|
|
48
|
+
"Get active payment methods"
|
|
49
|
+
activePaymentMethods: [PublicPaymentMethod]!
|
|
50
|
+
"Get active shipping methods"
|
|
51
|
+
activeShippingMethods: [PublicShippingMethod]!
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
type PublicPaymentMethod {
|
|
55
|
+
id: ID!
|
|
56
|
+
code: String!
|
|
57
|
+
name: String!
|
|
58
|
+
description: String
|
|
59
|
+
translations: [PaymentMethodTranslation!]!
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
type PublicShippingMethod {
|
|
63
|
+
id: ID!
|
|
64
|
+
code: String!
|
|
65
|
+
name: String!
|
|
66
|
+
description: String
|
|
67
|
+
translations: [ShippingMethodTranslation!]!
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
type Mutation {
|
|
71
|
+
"Adds an item to the Order. If custom fields are defined on the OrderLine entity, a third argument 'customFields' will be available."
|
|
72
|
+
addItemToOrder(productVariantId: ID!, quantity: Int!): UpdateOrderItemsResult!
|
|
73
|
+
"Remove an OrderLine from the Order"
|
|
74
|
+
removeOrderLine(orderLineId: ID!): RemoveOrderItemsResult!
|
|
75
|
+
"Remove all OrderLine from the Order"
|
|
76
|
+
removeAllOrderLines: RemoveOrderItemsResult!
|
|
77
|
+
"Adjusts an OrderLine. If custom fields are defined on the OrderLine entity, a third argument 'customFields' of type `OrderLineCustomFieldsInput` will be available."
|
|
78
|
+
adjustOrderLine(orderLineId: ID!, quantity: Int!): UpdateOrderItemsResult!
|
|
79
|
+
"Applies the given coupon code to the active Order"
|
|
80
|
+
applyCouponCode(couponCode: String!): ApplyCouponCodeResult!
|
|
81
|
+
"Removes the given coupon code from the active Order"
|
|
82
|
+
removeCouponCode(couponCode: String!): Order
|
|
83
|
+
"Transitions an Order to a new state. Valid next states can be found by querying `nextOrderStates`"
|
|
84
|
+
transitionOrderToState(state: String!): TransitionOrderToStateResult
|
|
85
|
+
"Sets the shipping address for the active Order"
|
|
86
|
+
setOrderShippingAddress(input: CreateAddressInput!): ActiveOrderResult!
|
|
87
|
+
"Sets the billing address for the active Order"
|
|
88
|
+
setOrderBillingAddress(input: CreateAddressInput!): ActiveOrderResult!
|
|
89
|
+
"Unsets the shipping address for the active Order. Available since version 3.1.0"
|
|
90
|
+
unsetOrderShippingAddress: ActiveOrderResult!
|
|
91
|
+
"Unsets the billing address for the active Order. Available since version 3.1.0"
|
|
92
|
+
unsetOrderBillingAddress: ActiveOrderResult!
|
|
93
|
+
"Allows any custom fields to be set for the active Order"
|
|
94
|
+
setOrderCustomFields(input: UpdateOrderInput!): ActiveOrderResult!
|
|
95
|
+
"""
|
|
96
|
+
Sets the shipping method by id, which can be obtained with the `eligibleShippingMethods` query.
|
|
97
|
+
An Order can have multiple shipping methods, in which case you can pass an array of ids. In this case,
|
|
98
|
+
you should configure a custom ShippingLineAssignmentStrategy in order to know which OrderLines each
|
|
99
|
+
shipping method will apply to.
|
|
100
|
+
"""
|
|
101
|
+
setOrderShippingMethod(shippingMethodId: [ID!]!): SetOrderShippingMethodResult!
|
|
102
|
+
"Add a Payment to the Order"
|
|
103
|
+
addPaymentToOrder(input: PaymentInput!): AddPaymentToOrderResult!
|
|
104
|
+
"Set the Customer for the Order. Required only if the Customer is not currently logged in"
|
|
105
|
+
setCustomerForOrder(input: CreateCustomerInput!): SetCustomerForOrderResult!
|
|
106
|
+
"""
|
|
107
|
+
Authenticates the user using the native authentication strategy. This mutation is an alias for authenticate({ native: { ... }})
|
|
108
|
+
|
|
109
|
+
The `rememberMe` option applies when using cookie-based sessions, and if `true` it will set the maxAge of the session cookie
|
|
110
|
+
to 1 year.
|
|
111
|
+
"""
|
|
112
|
+
login(username: String!, password: String!, rememberMe: Boolean): NativeAuthenticationResult!
|
|
113
|
+
"Authenticates the user using a named authentication strategy"
|
|
114
|
+
authenticate(input: AuthenticationInput!, rememberMe: Boolean): AuthenticationResult!
|
|
115
|
+
"End the current authenticated session"
|
|
116
|
+
logout: Success!
|
|
117
|
+
"""
|
|
118
|
+
Register a Customer account with the given credentials. There are three possible registration flows:
|
|
119
|
+
|
|
120
|
+
_If `authOptions.requireVerification` is set to `true`:_
|
|
121
|
+
|
|
122
|
+
1. **The Customer is registered _with_ a password**. A verificationToken will be created (and typically emailed to the Customer). That
|
|
123
|
+
verificationToken would then be passed to the `verifyCustomerAccount` mutation _without_ a password. The Customer is then
|
|
124
|
+
verified and authenticated in one step.
|
|
125
|
+
2. **The Customer is registered _without_ a password**. A verificationToken will be created (and typically emailed to the Customer). That
|
|
126
|
+
verificationToken would then be passed to the `verifyCustomerAccount` mutation _with_ the chosen password of the Customer. The Customer is then
|
|
127
|
+
verified and authenticated in one step.
|
|
128
|
+
|
|
129
|
+
_If `authOptions.requireVerification` is set to `false`:_
|
|
130
|
+
|
|
131
|
+
3. The Customer _must_ be registered _with_ a password. No further action is needed - the Customer is able to authenticate immediately.
|
|
132
|
+
"""
|
|
133
|
+
registerCustomerAccount(input: RegisterCustomerInput!): RegisterCustomerAccountResult!
|
|
134
|
+
"Regenerate and send a verification token for a new Customer registration. Only applicable if `authOptions.requireVerification` is set to true."
|
|
135
|
+
refreshCustomerVerification(emailAddress: String!): RefreshCustomerVerificationResult!
|
|
136
|
+
"Update an existing Customer"
|
|
137
|
+
updateCustomer(input: UpdateCustomerInput!): Customer!
|
|
138
|
+
"Create a new Customer Address"
|
|
139
|
+
createCustomerAddress(input: CreateAddressInput!): Address!
|
|
140
|
+
"Update an existing Address"
|
|
141
|
+
updateCustomerAddress(input: UpdateAddressInput!): Address!
|
|
142
|
+
"Delete an existing Address"
|
|
143
|
+
deleteCustomerAddress(id: ID!): Success!
|
|
144
|
+
"""
|
|
145
|
+
Verify a Customer email address with the token sent to that address. Only applicable if `authOptions.requireVerification` is set to true.
|
|
146
|
+
|
|
147
|
+
If the Customer was not registered with a password in the `registerCustomerAccount` mutation, the password _must_ be
|
|
148
|
+
provided here.
|
|
149
|
+
"""
|
|
150
|
+
verifyCustomerAccount(token: String!, password: String): VerifyCustomerAccountResult!
|
|
151
|
+
"Update the password of the active Customer"
|
|
152
|
+
updateCustomerPassword(currentPassword: String!, newPassword: String!): UpdateCustomerPasswordResult!
|
|
153
|
+
"""
|
|
154
|
+
Request to update the emailAddress of the active Customer. If `authOptions.requireVerification` is enabled
|
|
155
|
+
(as is the default), then the `identifierChangeToken` will be assigned to the current User and
|
|
156
|
+
a IdentifierChangeRequestEvent will be raised. This can then be used e.g. by the EmailPlugin to email
|
|
157
|
+
that verification token to the Customer, which is then used to verify the change of email address.
|
|
158
|
+
"""
|
|
159
|
+
requestUpdateCustomerEmailAddress(
|
|
160
|
+
password: String!
|
|
161
|
+
newEmailAddress: String!
|
|
162
|
+
): RequestUpdateCustomerEmailAddressResult!
|
|
163
|
+
"""
|
|
164
|
+
Confirm the update of the emailAddress with the provided token, which has been generated by the
|
|
165
|
+
`requestUpdateCustomerEmailAddress` mutation.
|
|
166
|
+
"""
|
|
167
|
+
updateCustomerEmailAddress(token: String!): UpdateCustomerEmailAddressResult!
|
|
168
|
+
"Requests a password reset email to be sent"
|
|
169
|
+
requestPasswordReset(emailAddress: String!): RequestPasswordResetResult
|
|
170
|
+
"Resets a Customer's password based on the provided token"
|
|
171
|
+
resetPassword(token: String!, password: String!): ResetPasswordResult!
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
# Populated at run-time
|
|
175
|
+
input AuthenticationInput
|
|
176
|
+
|
|
177
|
+
input RegisterCustomerInput {
|
|
178
|
+
emailAddress: String!
|
|
179
|
+
title: String
|
|
180
|
+
firstName: String
|
|
181
|
+
lastName: String
|
|
182
|
+
phoneNumber: String
|
|
183
|
+
password: String
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
input UpdateCustomerInput {
|
|
187
|
+
title: String
|
|
188
|
+
firstName: String
|
|
189
|
+
lastName: String
|
|
190
|
+
phoneNumber: String
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
# Populated with any custom fields at run-time
|
|
194
|
+
input UpdateOrderInput
|
|
195
|
+
|
|
196
|
+
"""
|
|
197
|
+
Passed as input to the `addPaymentToOrder` mutation.
|
|
198
|
+
"""
|
|
199
|
+
input PaymentInput {
|
|
200
|
+
"""
|
|
201
|
+
This field should correspond to the `code` property of a PaymentMethod.
|
|
202
|
+
"""
|
|
203
|
+
method: String!
|
|
204
|
+
"""
|
|
205
|
+
This field should contain arbitrary data passed to the specified PaymentMethodHandler's `createPayment()` method
|
|
206
|
+
as the "metadata" argument. For example, it could contain an ID for the payment and other
|
|
207
|
+
data generated by the payment provider.
|
|
208
|
+
"""
|
|
209
|
+
metadata: JSON!
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
# generated by generateListOptions function
|
|
213
|
+
input CollectionListOptions {
|
|
214
|
+
topLevelOnly: Boolean
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
# generated by generateListOptions function
|
|
218
|
+
input FacetListOptions
|
|
219
|
+
|
|
220
|
+
# generated by generateListOptions function
|
|
221
|
+
input OrderListOptions
|
|
222
|
+
|
|
223
|
+
# generated by generateListOptions function
|
|
224
|
+
input ProductListOptions
|
|
225
|
+
|
|
226
|
+
# generated by generateListOptions function
|
|
227
|
+
input ProductVariantListOptions
|
|
228
|
+
|
|
229
|
+
union AddPaymentToOrderResult =
|
|
230
|
+
| Order
|
|
231
|
+
| OrderPaymentStateError
|
|
232
|
+
| IneligiblePaymentMethodError
|
|
233
|
+
| PaymentFailedError
|
|
234
|
+
| PaymentDeclinedError
|
|
235
|
+
| OrderStateTransitionError
|
|
236
|
+
| NoActiveOrderError
|
|
237
|
+
union TransitionOrderToStateResult = Order | OrderStateTransitionError
|
|
238
|
+
union SetCustomerForOrderResult =
|
|
239
|
+
| Order
|
|
240
|
+
| AlreadyLoggedInError
|
|
241
|
+
| EmailAddressConflictError
|
|
242
|
+
| NoActiveOrderError
|
|
243
|
+
| GuestCheckoutError
|
|
244
|
+
union RegisterCustomerAccountResult =
|
|
245
|
+
| Success
|
|
246
|
+
| MissingPasswordError
|
|
247
|
+
| PasswordValidationError
|
|
248
|
+
| NativeAuthStrategyError
|
|
249
|
+
union RefreshCustomerVerificationResult = Success | NativeAuthStrategyError
|
|
250
|
+
union VerifyCustomerAccountResult =
|
|
251
|
+
| CurrentUser
|
|
252
|
+
| VerificationTokenInvalidError
|
|
253
|
+
| VerificationTokenExpiredError
|
|
254
|
+
| MissingPasswordError
|
|
255
|
+
| PasswordValidationError
|
|
256
|
+
| PasswordAlreadySetError
|
|
257
|
+
| NativeAuthStrategyError
|
|
258
|
+
union UpdateCustomerPasswordResult =
|
|
259
|
+
| Success
|
|
260
|
+
| InvalidCredentialsError
|
|
261
|
+
| PasswordValidationError
|
|
262
|
+
| NativeAuthStrategyError
|
|
263
|
+
union RequestUpdateCustomerEmailAddressResult =
|
|
264
|
+
| Success
|
|
265
|
+
| InvalidCredentialsError
|
|
266
|
+
| EmailAddressConflictError
|
|
267
|
+
| NativeAuthStrategyError
|
|
268
|
+
union UpdateCustomerEmailAddressResult =
|
|
269
|
+
| Success
|
|
270
|
+
| IdentifierChangeTokenInvalidError
|
|
271
|
+
| IdentifierChangeTokenExpiredError
|
|
272
|
+
| NativeAuthStrategyError
|
|
273
|
+
union RequestPasswordResetResult = Success | NativeAuthStrategyError
|
|
274
|
+
union ResetPasswordResult =
|
|
275
|
+
| CurrentUser
|
|
276
|
+
| PasswordResetTokenInvalidError
|
|
277
|
+
| PasswordResetTokenExpiredError
|
|
278
|
+
| PasswordValidationError
|
|
279
|
+
| NativeAuthStrategyError
|
|
280
|
+
| NotVerifiedError
|
|
281
|
+
union NativeAuthenticationResult =
|
|
282
|
+
| CurrentUser
|
|
283
|
+
| InvalidCredentialsError
|
|
284
|
+
| NotVerifiedError
|
|
285
|
+
| NativeAuthStrategyError
|
|
286
|
+
union AuthenticationResult = CurrentUser | InvalidCredentialsError | NotVerifiedError
|
|
287
|
+
union ActiveOrderResult = Order | NoActiveOrderError
|
|
@@ -30,11 +30,11 @@ class NativeAuthenticationStrategy {
|
|
|
30
30
|
this.userService = injector.get(UserService);
|
|
31
31
|
}
|
|
32
32
|
defineInputType() {
|
|
33
|
-
return (0, graphql_tag_1.default) `
|
|
34
|
-
input NativeAuthInput {
|
|
35
|
-
username: String!
|
|
36
|
-
password: String!
|
|
37
|
-
}
|
|
33
|
+
return (0, graphql_tag_1.default) `
|
|
34
|
+
input NativeAuthInput {
|
|
35
|
+
username: String!
|
|
36
|
+
password: String!
|
|
37
|
+
}
|
|
38
38
|
`;
|
|
39
39
|
}
|
|
40
40
|
async authenticate(ctx, data) {
|