@unchainedshop/api 2.0.0-beta8 → 2.0.0-rc.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/jest.config.js +9 -0
- package/lib/acl.d.ts +2 -0
- package/lib/acl.js +2 -2
- package/lib/acl.js.map +1 -1
- package/lib/api-index.d.ts +1 -0
- package/lib/api-index.js +1 -1
- package/lib/api-index.js.map +1 -1
- package/lib/createGraphQLServer.js +22 -20
- package/lib/createGraphQLServer.js.map +1 -1
- package/lib/errors.d.ts +20 -0
- package/lib/errors.js +20 -0
- package/lib/errors.js.map +1 -1
- package/lib/express/createBulkImportMiddleware.js +1 -1
- package/lib/express/createBulkImportMiddleware.js.map +1 -1
- package/lib/express/createERCMetadataMiddleware.js +2 -1
- package/lib/express/createERCMetadataMiddleware.js.map +1 -1
- package/lib/express/createSingleSignOnMiddleware.js.map +1 -1
- package/lib/loaders/index.js +5 -9
- package/lib/loaders/index.js.map +1 -1
- package/lib/resolvers/mutations/accounts/changePassword.js +12 -1
- package/lib/resolvers/mutations/accounts/changePassword.js.map +1 -1
- package/lib/resolvers/mutations/accounts/createUser.js +17 -3
- package/lib/resolvers/mutations/accounts/createUser.js.map +1 -1
- package/lib/resolvers/mutations/accounts/disableTOTP.js +15 -2
- package/lib/resolvers/mutations/accounts/disableTOTP.js.map +1 -1
- package/lib/resolvers/mutations/accounts/enableTOTP.js +12 -1
- package/lib/resolvers/mutations/accounts/enableTOTP.js.map +1 -1
- package/lib/resolvers/mutations/accounts/enrollUser.js +17 -4
- package/lib/resolvers/mutations/accounts/enrollUser.js.map +1 -1
- package/lib/resolvers/mutations/accounts/forgotPassword.js +11 -1
- package/lib/resolvers/mutations/accounts/forgotPassword.js.map +1 -1
- package/lib/resolvers/mutations/accounts/impersonate.js +1 -1
- package/lib/resolvers/mutations/accounts/impersonate.js.map +1 -1
- package/lib/resolvers/mutations/accounts/loginWithPassword.js +19 -1
- package/lib/resolvers/mutations/accounts/loginWithPassword.js.map +1 -1
- package/lib/resolvers/mutations/accounts/loginWithWebAuthn.js +13 -1
- package/lib/resolvers/mutations/accounts/loginWithWebAuthn.js.map +1 -1
- package/lib/resolvers/mutations/accounts/logout.d.ts +1 -1
- package/lib/resolvers/mutations/accounts/logout.js +6 -2
- package/lib/resolvers/mutations/accounts/logout.js.map +1 -1
- package/lib/resolvers/mutations/accounts/logoutAllSessions.js +4 -1
- package/lib/resolvers/mutations/accounts/logoutAllSessions.js.map +1 -1
- package/lib/resolvers/mutations/accounts/resetPassword.js +17 -2
- package/lib/resolvers/mutations/accounts/resetPassword.js.map +1 -1
- package/lib/resolvers/mutations/assortments/addAssortmentFilter.js +1 -2
- package/lib/resolvers/mutations/assortments/addAssortmentFilter.js.map +1 -1
- package/lib/resolvers/mutations/assortments/addAssortmentLink.js +16 -9
- package/lib/resolvers/mutations/assortments/addAssortmentLink.js.map +1 -1
- package/lib/resolvers/mutations/assortments/addAssortmentMedia.js +2 -3
- package/lib/resolvers/mutations/assortments/addAssortmentMedia.js.map +1 -1
- package/lib/resolvers/mutations/assortments/addAssortmentProduct.js +1 -2
- package/lib/resolvers/mutations/assortments/addAssortmentProduct.js.map +1 -1
- package/lib/resolvers/mutations/assortments/createAssortment.js +1 -2
- package/lib/resolvers/mutations/assortments/createAssortment.js.map +1 -1
- package/lib/resolvers/mutations/assortments/prepareAssortmentMediaUpload.js +0 -1
- package/lib/resolvers/mutations/assortments/prepareAssortmentMediaUpload.js.map +1 -1
- package/lib/resolvers/mutations/assortments/removeAssortmentMedia.js +2 -2
- package/lib/resolvers/mutations/assortments/removeAssortmentMedia.js.map +1 -1
- package/lib/resolvers/mutations/assortments/reorderAssortmentFilters.js +1 -1
- package/lib/resolvers/mutations/assortments/reorderAssortmentFilters.js.map +1 -1
- package/lib/resolvers/mutations/assortments/reorderAssortmentLinks.js +1 -1
- package/lib/resolvers/mutations/assortments/reorderAssortmentLinks.js.map +1 -1
- package/lib/resolvers/mutations/assortments/reorderAssortmentMedia.js +1 -1
- package/lib/resolvers/mutations/assortments/reorderAssortmentMedia.js.map +1 -1
- package/lib/resolvers/mutations/assortments/reorderAssortmentProducts.js +1 -1
- package/lib/resolvers/mutations/assortments/reorderAssortmentProducts.js.map +1 -1
- package/lib/resolvers/mutations/assortments/setBaseAssortment.js +1 -1
- package/lib/resolvers/mutations/assortments/setBaseAssortment.js.map +1 -1
- package/lib/resolvers/mutations/assortments/updateAssortment.js +1 -1
- package/lib/resolvers/mutations/assortments/updateAssortment.js.map +1 -1
- package/lib/resolvers/mutations/assortments/updateAssortmentMediaTexts.js +1 -1
- package/lib/resolvers/mutations/assortments/updateAssortmentMediaTexts.js.map +1 -1
- package/lib/resolvers/mutations/assortments/updateAssortmentTexts.js +1 -1
- package/lib/resolvers/mutations/assortments/updateAssortmentTexts.js.map +1 -1
- package/lib/resolvers/mutations/bookmarks/bookmark.js +2 -2
- package/lib/resolvers/mutations/bookmarks/bookmark.js.map +1 -1
- package/lib/resolvers/mutations/bookmarks/createBookmark.js +1 -1
- package/lib/resolvers/mutations/bookmarks/createBookmark.js.map +1 -1
- package/lib/resolvers/mutations/countries/createCountry.js +1 -2
- package/lib/resolvers/mutations/countries/createCountry.js.map +1 -1
- package/lib/resolvers/mutations/countries/removeCountry.js +1 -1
- package/lib/resolvers/mutations/countries/removeCountry.js.map +1 -1
- package/lib/resolvers/mutations/countries/updateCountry.js +1 -1
- package/lib/resolvers/mutations/countries/updateCountry.js.map +1 -1
- package/lib/resolvers/mutations/currencies/createCurrency.js +1 -2
- package/lib/resolvers/mutations/currencies/createCurrency.js.map +1 -1
- package/lib/resolvers/mutations/currencies/removeCurrency.js +1 -1
- package/lib/resolvers/mutations/currencies/removeCurrency.js.map +1 -1
- package/lib/resolvers/mutations/currencies/updateCurrency.js +1 -1
- package/lib/resolvers/mutations/currencies/updateCurrency.js.map +1 -1
- package/lib/resolvers/mutations/delivery/createDeliveryProvider.js +1 -2
- package/lib/resolvers/mutations/delivery/createDeliveryProvider.js.map +1 -1
- package/lib/resolvers/mutations/delivery/removeDeliveryProvider.js +1 -1
- package/lib/resolvers/mutations/delivery/removeDeliveryProvider.js.map +1 -1
- package/lib/resolvers/mutations/delivery/updateDeliveryProvider.js +1 -1
- package/lib/resolvers/mutations/delivery/updateDeliveryProvider.js.map +1 -1
- package/lib/resolvers/mutations/enrollments/activateEnrollment.js +1 -1
- package/lib/resolvers/mutations/enrollments/activateEnrollment.js.map +1 -1
- package/lib/resolvers/mutations/enrollments/terminateEnrollment.js +1 -1
- package/lib/resolvers/mutations/enrollments/terminateEnrollment.js.map +1 -1
- package/lib/resolvers/mutations/enrollments/updateEnrollment.js +5 -5
- package/lib/resolvers/mutations/enrollments/updateEnrollment.js.map +1 -1
- package/lib/resolvers/mutations/filters/createFilter.js +1 -2
- package/lib/resolvers/mutations/filters/createFilter.js.map +1 -1
- package/lib/resolvers/mutations/filters/createFilterOption.js +1 -1
- package/lib/resolvers/mutations/filters/createFilterOption.js.map +1 -1
- package/lib/resolvers/mutations/filters/removeFilter.d.ts +1 -1
- package/lib/resolvers/mutations/filters/removeFilter.js +3 -3
- package/lib/resolvers/mutations/filters/removeFilter.js.map +1 -1
- package/lib/resolvers/mutations/filters/updateFilter.js +1 -1
- package/lib/resolvers/mutations/filters/updateFilter.js.map +1 -1
- package/lib/resolvers/mutations/filters/updateFilterTexts.js +1 -1
- package/lib/resolvers/mutations/filters/updateFilterTexts.js.map +1 -1
- package/lib/resolvers/mutations/index.d.ts +1 -0
- package/lib/resolvers/mutations/index.js +2 -0
- package/lib/resolvers/mutations/index.js.map +1 -1
- package/lib/resolvers/mutations/languages/createLanguage.js +1 -2
- package/lib/resolvers/mutations/languages/createLanguage.js.map +1 -1
- package/lib/resolvers/mutations/languages/removeLanguage.js +1 -1
- package/lib/resolvers/mutations/languages/removeLanguage.js.map +1 -1
- package/lib/resolvers/mutations/languages/updateLanguage.js +1 -1
- package/lib/resolvers/mutations/languages/updateLanguage.js.map +1 -1
- package/lib/resolvers/mutations/orders/createCart.js +1 -1
- package/lib/resolvers/mutations/orders/createCart.js.map +1 -1
- package/lib/resolvers/mutations/orders/payOrder.js +1 -1
- package/lib/resolvers/mutations/orders/payOrder.js.map +1 -1
- package/lib/resolvers/mutations/orders/removeOrder.js +1 -1
- package/lib/resolvers/mutations/orders/removeOrder.js.map +1 -1
- package/lib/resolvers/mutations/payment/createPaymentProvider.js +1 -2
- package/lib/resolvers/mutations/payment/createPaymentProvider.js.map +1 -1
- package/lib/resolvers/mutations/payment/registerPaymentCredentials.js +2 -2
- package/lib/resolvers/mutations/payment/registerPaymentCredentials.js.map +1 -1
- package/lib/resolvers/mutations/payment/removePaymentProvider.js +1 -1
- package/lib/resolvers/mutations/payment/removePaymentProvider.js.map +1 -1
- package/lib/resolvers/mutations/payment/updatePaymentProvider.js +1 -1
- package/lib/resolvers/mutations/payment/updatePaymentProvider.js.map +1 -1
- package/lib/resolvers/mutations/products/addProductAssignment.js +1 -1
- package/lib/resolvers/mutations/products/addProductAssignment.js.map +1 -1
- package/lib/resolvers/mutations/products/addProductMedia.js +1 -2
- package/lib/resolvers/mutations/products/addProductMedia.js.map +1 -1
- package/lib/resolvers/mutations/products/addProductReviewVote.js +1 -1
- package/lib/resolvers/mutations/products/addProductReviewVote.js.map +1 -1
- package/lib/resolvers/mutations/products/createProduct.js +1 -2
- package/lib/resolvers/mutations/products/createProduct.js.map +1 -1
- package/lib/resolvers/mutations/products/createProductBundleItem.js +1 -1
- package/lib/resolvers/mutations/products/createProductBundleItem.js.map +1 -1
- package/lib/resolvers/mutations/products/createProductReview.js +1 -1
- package/lib/resolvers/mutations/products/createProductReview.js.map +1 -1
- package/lib/resolvers/mutations/products/createProductVariation.js +1 -2
- package/lib/resolvers/mutations/products/createProductVariation.js.map +1 -1
- package/lib/resolvers/mutations/products/createProductVariationOption.js +4 -1
- package/lib/resolvers/mutations/products/createProductVariationOption.js.map +1 -1
- package/lib/resolvers/mutations/products/prepareProductMediaUpload.js +0 -1
- package/lib/resolvers/mutations/products/prepareProductMediaUpload.js.map +1 -1
- package/lib/resolvers/mutations/products/publishProduct.js +1 -1
- package/lib/resolvers/mutations/products/publishProduct.js.map +1 -1
- package/lib/resolvers/mutations/products/removeBundleItem.js +2 -2
- package/lib/resolvers/mutations/products/removeBundleItem.js.map +1 -1
- package/lib/resolvers/mutations/products/removeProduct.js +14 -2
- package/lib/resolvers/mutations/products/removeProduct.js.map +1 -1
- package/lib/resolvers/mutations/products/removeProductAssignment.js +1 -1
- package/lib/resolvers/mutations/products/removeProductAssignment.js.map +1 -1
- package/lib/resolvers/mutations/products/removeProductMedia.js +2 -2
- package/lib/resolvers/mutations/products/removeProductMedia.js.map +1 -1
- package/lib/resolvers/mutations/products/removeProductReview.js +1 -1
- package/lib/resolvers/mutations/products/removeProductReview.js.map +1 -1
- package/lib/resolvers/mutations/products/removeProductReviewVote.js +1 -1
- package/lib/resolvers/mutations/products/removeProductReviewVote.js.map +1 -1
- package/lib/resolvers/mutations/products/removeProductVariation.js +1 -1
- package/lib/resolvers/mutations/products/removeProductVariation.js.map +1 -1
- package/lib/resolvers/mutations/products/removeProductVariationOption.js +1 -1
- package/lib/resolvers/mutations/products/removeProductVariationOption.js.map +1 -1
- package/lib/resolvers/mutations/products/reorderProductMedia.js +1 -1
- package/lib/resolvers/mutations/products/reorderProductMedia.js.map +1 -1
- package/lib/resolvers/mutations/products/unpublishProduct.js +1 -1
- package/lib/resolvers/mutations/products/unpublishProduct.js.map +1 -1
- package/lib/resolvers/mutations/products/updateProduct.js +1 -1
- package/lib/resolvers/mutations/products/updateProduct.js.map +1 -1
- package/lib/resolvers/mutations/products/updateProductCommerce.js +1 -1
- package/lib/resolvers/mutations/products/updateProductCommerce.js.map +1 -1
- package/lib/resolvers/mutations/products/updateProductMediaTexts.js +1 -1
- package/lib/resolvers/mutations/products/updateProductMediaTexts.js.map +1 -1
- package/lib/resolvers/mutations/products/updateProductPlan.js +1 -1
- package/lib/resolvers/mutations/products/updateProductPlan.js.map +1 -1
- package/lib/resolvers/mutations/products/updateProductReview.js +1 -1
- package/lib/resolvers/mutations/products/updateProductReview.js.map +1 -1
- package/lib/resolvers/mutations/products/updateProductSupply.js +1 -1
- package/lib/resolvers/mutations/products/updateProductSupply.js.map +1 -1
- package/lib/resolvers/mutations/products/updateProductTexts.js +1 -1
- package/lib/resolvers/mutations/products/updateProductTexts.js.map +1 -1
- package/lib/resolvers/mutations/products/updateProductTokenization.js +1 -1
- package/lib/resolvers/mutations/products/updateProductTokenization.js.map +1 -1
- package/lib/resolvers/mutations/products/updateProductVariationTexts.js +1 -1
- package/lib/resolvers/mutations/products/updateProductVariationTexts.js.map +1 -1
- package/lib/resolvers/mutations/products/updateProductWarehousing.js +1 -1
- package/lib/resolvers/mutations/products/updateProductWarehousing.js.map +1 -1
- package/lib/resolvers/mutations/users/prepareUserAvatarUpload.js +0 -1
- package/lib/resolvers/mutations/users/prepareUserAvatarUpload.js.map +1 -1
- package/lib/resolvers/mutations/users/removeUser.d.ts +4 -0
- package/lib/resolvers/mutations/users/removeUser.js +11 -0
- package/lib/resolvers/mutations/users/removeUser.js.map +1 -0
- package/lib/resolvers/mutations/users/setRoles.js +1 -1
- package/lib/resolvers/mutations/users/setRoles.js.map +1 -1
- package/lib/resolvers/mutations/users/setUserTags.js +1 -1
- package/lib/resolvers/mutations/users/setUserTags.js.map +1 -1
- package/lib/resolvers/mutations/users/updateUserAvatar.js +1 -2
- package/lib/resolvers/mutations/users/updateUserAvatar.js.map +1 -1
- package/lib/resolvers/mutations/users/updateUserProfile.js +1 -1
- package/lib/resolvers/mutations/users/updateUserProfile.js.map +1 -1
- package/lib/resolvers/mutations/utils/getOrderCart.js +1 -1
- package/lib/resolvers/mutations/utils/getOrderCart.js.map +1 -1
- package/lib/resolvers/mutations/warehousing/createWarehousingProvider.js +1 -2
- package/lib/resolvers/mutations/warehousing/createWarehousingProvider.js.map +1 -1
- package/lib/resolvers/mutations/warehousing/removeWarehousingProvider.js +1 -1
- package/lib/resolvers/mutations/warehousing/removeWarehousingProvider.js.map +1 -1
- package/lib/resolvers/mutations/warehousing/updateWarehousingProvider.js +1 -1
- package/lib/resolvers/mutations/warehousing/updateWarehousingProvider.js.map +1 -1
- package/lib/resolvers/mutations/worker/addWork.js +1 -1
- package/lib/resolvers/mutations/worker/addWork.js.map +1 -1
- package/lib/resolvers/mutations/worker/finishWork.js +1 -1
- package/lib/resolvers/mutations/worker/finishWork.js.map +1 -1
- package/lib/resolvers/mutations/worker/removeWork.js +1 -1
- package/lib/resolvers/mutations/worker/removeWork.js.map +1 -1
- package/lib/resolvers/queries/products/productCatalogPrices.js +0 -1
- package/lib/resolvers/queries/products/productCatalogPrices.js.map +1 -1
- package/lib/resolvers/queries/users/users.d.ts +2 -1
- package/lib/resolvers/queries/users/users.js.map +1 -1
- package/lib/resolvers/queries/worker/workQueue.d.ts +1 -1
- package/lib/resolvers/queries/worker/workQueue.js +1 -1
- package/lib/resolvers/queries/worker/workQueue.js.map +1 -1
- package/lib/resolvers/type/assortment/assortment-filter-types.js +0 -1
- package/lib/resolvers/type/assortment/assortment-filter-types.js.map +1 -1
- package/lib/resolvers/type/assortment/assortment-link-types.js +0 -2
- package/lib/resolvers/type/assortment/assortment-link-types.js.map +1 -1
- package/lib/resolvers/type/assortment/assortment-media-types.js +2 -0
- package/lib/resolvers/type/assortment/assortment-media-types.js.map +1 -1
- package/lib/resolvers/type/assortment/assortment-path-link-types.js +1 -0
- package/lib/resolvers/type/assortment/assortment-path-link-types.js.map +1 -1
- package/lib/resolvers/type/assortment/assortment-product-types.js +0 -2
- package/lib/resolvers/type/assortment/assortment-product-types.js.map +1 -1
- package/lib/resolvers/type/assortment/assortment-types.js +8 -4
- package/lib/resolvers/type/assortment/assortment-types.js.map +1 -1
- package/lib/resolvers/type/bookmark-types.js +0 -1
- package/lib/resolvers/type/bookmark-types.js.map +1 -1
- package/lib/resolvers/type/enrollment/enrollment-plan-tyes.js +0 -1
- package/lib/resolvers/type/enrollment/enrollment-plan-tyes.js.map +1 -1
- package/lib/resolvers/type/index.d.ts +1 -0
- package/lib/resolvers/type/login-method-response-types.d.ts +1 -0
- package/lib/resolvers/type/order/order-item-types.js +0 -3
- package/lib/resolvers/type/order/order-item-types.js.map +1 -1
- package/lib/resolvers/type/product/product-assortment-path-types.js +1 -0
- package/lib/resolvers/type/product/product-assortment-path-types.js.map +1 -1
- package/lib/resolvers/type/product/product-bundle-item-types.js +0 -1
- package/lib/resolvers/type/product/product-bundle-item-types.js.map +1 -1
- package/lib/resolvers/type/product/product-configurable-types.js +1 -0
- package/lib/resolvers/type/product/product-configurable-types.js.map +1 -1
- package/lib/resolvers/type/product/product-media-types.js +2 -0
- package/lib/resolvers/type/product/product-media-types.js.map +1 -1
- package/lib/resolvers/type/product/product-plan-types.js +1 -12
- package/lib/resolvers/type/product/product-plan-types.js.map +1 -1
- package/lib/resolvers/type/product/product-review-types.js +0 -1
- package/lib/resolvers/type/product/product-review-types.js.map +1 -1
- package/lib/resolvers/type/product/product-variation-assignment-types.js +0 -1
- package/lib/resolvers/type/product/product-variation-assignment-types.js.map +1 -1
- package/lib/resolvers/type/quotation-types.js +0 -1
- package/lib/resolvers/type/quotation-types.js.map +1 -1
- package/lib/resolvers/type/token-types.js +2 -1
- package/lib/resolvers/type/token-types.js.map +1 -1
- package/lib/resolvers/type/user-types.d.ts +3 -0
- package/lib/resolvers/type/user-types.js +10 -9
- package/lib/resolvers/type/user-types.js.map +1 -1
- package/lib/roles/admin.js +3 -72
- package/lib/roles/admin.js.map +1 -1
- package/lib/schema/index.d.ts +5 -2
- package/lib/schema/index.js +14 -1
- package/lib/schema/index.js.map +1 -1
- package/lib/schema/mutation.js +20 -15
- package/lib/schema/mutation.js.map +1 -1
- package/lib/schema/query.js +14 -12
- package/lib/schema/query.js.map +1 -1
- package/lib/schema/types/assortment.js +1 -0
- package/lib/schema/types/assortment.js.map +1 -1
- package/lib/schema/types/dispatch.js +0 -1
- package/lib/schema/types/dispatch.js.map +1 -1
- package/lib/schema/types/product/plan-product.js +0 -1
- package/lib/schema/types/product/plan-product.js.map +1 -1
- package/lib/schema/types/product/simple-product.js +0 -1
- package/lib/schema/types/product/simple-product.js.map +1 -1
- package/lib/schema/types/product/tokenized-product.js +0 -1
- package/lib/schema/types/product/tokenized-product.js.map +1 -1
- package/lib/schema/types/stock.js +0 -1
- package/lib/schema/types/stock.js.map +1 -1
- package/lib/schema/types/user.js +3 -0
- package/lib/schema/types/user.js.map +1 -1
- package/package.json +12 -11
- package/src/acl.ts +2 -2
- package/src/api-index.ts +1 -1
- package/src/createGraphQLServer.ts +25 -26
- package/src/errors.ts +85 -0
- package/src/express/createBulkImportMiddleware.ts +6 -9
- package/src/express/createERCMetadataMiddleware.ts +2 -1
- package/src/express/createSingleSignOnMiddleware.ts +3 -2
- package/src/loaders/index.ts +27 -35
- package/src/resolvers/mutations/accounts/changePassword.ts +9 -2
- package/src/resolvers/mutations/accounts/createUser.ts +19 -4
- package/src/resolvers/mutations/accounts/disableTOTP.ts +13 -3
- package/src/resolvers/mutations/accounts/enableTOTP.ts +9 -2
- package/src/resolvers/mutations/accounts/enrollUser.ts +19 -4
- package/src/resolvers/mutations/accounts/forgotPassword.ts +8 -1
- package/src/resolvers/mutations/accounts/impersonate.ts +1 -1
- package/src/resolvers/mutations/accounts/loginWithPassword.ts +24 -1
- package/src/resolvers/mutations/accounts/loginWithWebAuthn.ts +13 -2
- package/src/resolvers/mutations/accounts/logout.ts +9 -2
- package/src/resolvers/mutations/accounts/logoutAllSessions.ts +7 -1
- package/src/resolvers/mutations/accounts/resetPassword.ts +19 -3
- package/src/resolvers/mutations/assortments/addAssortmentFilter.ts +5 -9
- package/src/resolvers/mutations/assortments/addAssortmentLink.ts +22 -14
- package/src/resolvers/mutations/assortments/addAssortmentMedia.ts +2 -6
- package/src/resolvers/mutations/assortments/addAssortmentProduct.ts +0 -2
- package/src/resolvers/mutations/assortments/createAssortment.ts +4 -8
- package/src/resolvers/mutations/assortments/prepareAssortmentMediaUpload.ts +0 -1
- package/src/resolvers/mutations/assortments/removeAssortmentMedia.ts +2 -2
- package/src/resolvers/mutations/assortments/reorderAssortmentFilters.ts +3 -6
- package/src/resolvers/mutations/assortments/reorderAssortmentLinks.ts +0 -1
- package/src/resolvers/mutations/assortments/reorderAssortmentMedia.ts +3 -6
- package/src/resolvers/mutations/assortments/reorderAssortmentProducts.ts +0 -1
- package/src/resolvers/mutations/assortments/setBaseAssortment.ts +1 -1
- package/src/resolvers/mutations/assortments/updateAssortment.ts +1 -1
- package/src/resolvers/mutations/assortments/updateAssortmentMediaTexts.ts +1 -1
- package/src/resolvers/mutations/assortments/updateAssortmentTexts.ts +1 -1
- package/src/resolvers/mutations/bookmarks/bookmark.ts +4 -7
- package/src/resolvers/mutations/bookmarks/createBookmark.ts +4 -7
- package/src/resolvers/mutations/countries/createCountry.ts +3 -7
- package/src/resolvers/mutations/countries/removeCountry.ts +1 -1
- package/src/resolvers/mutations/countries/updateCountry.ts +1 -1
- package/src/resolvers/mutations/currencies/createCurrency.ts +3 -7
- package/src/resolvers/mutations/currencies/removeCurrency.ts +1 -1
- package/src/resolvers/mutations/currencies/updateCurrency.ts +1 -1
- package/src/resolvers/mutations/delivery/createDeliveryProvider.ts +3 -7
- package/src/resolvers/mutations/delivery/removeDeliveryProvider.ts +1 -1
- package/src/resolvers/mutations/delivery/updateDeliveryProvider.ts +1 -1
- package/src/resolvers/mutations/enrollments/activateEnrollment.ts +1 -1
- package/src/resolvers/mutations/enrollments/terminateEnrollment.ts +1 -1
- package/src/resolvers/mutations/enrollments/updateEnrollment.ts +5 -5
- package/src/resolvers/mutations/filters/createFilter.ts +0 -2
- package/src/resolvers/mutations/filters/createFilterOption.ts +5 -1
- package/src/resolvers/mutations/filters/removeFilter.ts +3 -3
- package/src/resolvers/mutations/filters/updateFilter.ts +1 -1
- package/src/resolvers/mutations/filters/updateFilterTexts.ts +1 -1
- package/src/resolvers/mutations/index.ts +2 -0
- package/src/resolvers/mutations/languages/createLanguage.ts +3 -7
- package/src/resolvers/mutations/languages/removeLanguage.ts +1 -1
- package/src/resolvers/mutations/languages/updateLanguage.ts +1 -1
- package/src/resolvers/mutations/orders/createCart.ts +4 -1
- package/src/resolvers/mutations/orders/payOrder.ts +1 -1
- package/src/resolvers/mutations/orders/removeOrder.ts +1 -1
- package/src/resolvers/mutations/payment/createPaymentProvider.ts +3 -7
- package/src/resolvers/mutations/payment/registerPaymentCredentials.ts +6 -2
- package/src/resolvers/mutations/payment/removePaymentProvider.ts +1 -1
- package/src/resolvers/mutations/payment/updatePaymentProvider.ts +1 -1
- package/src/resolvers/mutations/products/addProductAssignment.ts +4 -8
- package/src/resolvers/mutations/products/addProductMedia.ts +1 -2
- package/src/resolvers/mutations/products/addProductReviewVote.ts +1 -1
- package/src/resolvers/mutations/products/createProduct.ts +4 -8
- package/src/resolvers/mutations/products/createProductBundleItem.ts +1 -1
- package/src/resolvers/mutations/products/createProductReview.ts +5 -8
- package/src/resolvers/mutations/products/createProductVariation.ts +6 -10
- package/src/resolvers/mutations/products/createProductVariationOption.ts +4 -5
- package/src/resolvers/mutations/products/prepareProductMediaUpload.ts +0 -1
- package/src/resolvers/mutations/products/publishProduct.ts +1 -1
- package/src/resolvers/mutations/products/removeBundleItem.ts +2 -2
- package/src/resolvers/mutations/products/removeProduct.ts +23 -2
- package/src/resolvers/mutations/products/removeProductAssignment.ts +1 -1
- package/src/resolvers/mutations/products/removeProductMedia.ts +2 -2
- package/src/resolvers/mutations/products/removeProductReview.ts +1 -1
- package/src/resolvers/mutations/products/removeProductReviewVote.ts +1 -1
- package/src/resolvers/mutations/products/removeProductVariation.ts +1 -1
- package/src/resolvers/mutations/products/removeProductVariationOption.ts +0 -1
- package/src/resolvers/mutations/products/reorderProductMedia.ts +1 -1
- package/src/resolvers/mutations/products/unpublishProduct.ts +1 -1
- package/src/resolvers/mutations/products/updateProduct.ts +1 -1
- package/src/resolvers/mutations/products/updateProductCommerce.ts +1 -1
- package/src/resolvers/mutations/products/updateProductMediaTexts.ts +1 -1
- package/src/resolvers/mutations/products/updateProductPlan.ts +1 -1
- package/src/resolvers/mutations/products/updateProductReview.ts +1 -1
- package/src/resolvers/mutations/products/updateProductSupply.ts +1 -1
- package/src/resolvers/mutations/products/updateProductTexts.ts +1 -1
- package/src/resolvers/mutations/products/updateProductTokenization.ts +1 -1
- package/src/resolvers/mutations/products/updateProductVariationTexts.ts +0 -1
- package/src/resolvers/mutations/products/updateProductWarehousing.ts +1 -1
- package/src/resolvers/mutations/users/prepareUserAvatarUpload.ts +0 -1
- package/src/resolvers/mutations/users/removeUser.ts +19 -0
- package/src/resolvers/mutations/users/setRoles.ts +1 -1
- package/src/resolvers/mutations/users/setUserTags.ts +1 -1
- package/src/resolvers/mutations/users/updateUserAvatar.ts +1 -2
- package/src/resolvers/mutations/users/updateUserProfile.ts +1 -1
- package/src/resolvers/mutations/utils/getOrderCart.ts +1 -1
- package/src/resolvers/mutations/warehousing/createWarehousingProvider.ts +3 -7
- package/src/resolvers/mutations/warehousing/removeWarehousingProvider.ts +1 -1
- package/src/resolvers/mutations/warehousing/updateWarehousingProvider.ts +1 -1
- package/src/resolvers/mutations/worker/addWork.ts +1 -1
- package/src/resolvers/mutations/worker/finishWork.ts +8 -12
- package/src/resolvers/mutations/worker/removeWork.ts +1 -1
- package/src/resolvers/queries/products/productCatalogPrices.ts +0 -1
- package/src/resolvers/queries/users/users.ts +2 -1
- package/src/resolvers/queries/worker/workQueue.ts +1 -1
- package/src/resolvers/type/assortment/assortment-filter-types.ts +0 -1
- package/src/resolvers/type/assortment/assortment-link-types.ts +0 -2
- package/src/resolvers/type/assortment/assortment-media-types.ts +2 -0
- package/src/resolvers/type/assortment/assortment-path-link-types.ts +1 -0
- package/src/resolvers/type/assortment/assortment-product-types.ts +0 -2
- package/src/resolvers/type/assortment/assortment-types.ts +9 -4
- package/src/resolvers/type/bookmark-types.ts +0 -1
- package/src/resolvers/type/enrollment/enrollment-plan-tyes.ts +0 -1
- package/src/resolvers/type/order/order-item-types.ts +0 -3
- package/src/resolvers/type/product/product-assortment-path-types.ts +1 -0
- package/src/resolvers/type/product/product-bundle-item-types.ts +0 -1
- package/src/resolvers/type/product/product-configurable-types.ts +1 -0
- package/src/resolvers/type/product/product-media-types.ts +2 -0
- package/src/resolvers/type/product/product-plan-types.ts +2 -18
- package/src/resolvers/type/product/product-review-types.ts +0 -1
- package/src/resolvers/type/product/product-variation-assignment-types.ts +0 -1
- package/src/resolvers/type/quotation-types.ts +0 -1
- package/src/resolvers/type/token-types.ts +2 -1
- package/src/resolvers/type/user-types.ts +14 -10
- package/src/roles/admin.ts +3 -72
- package/src/schema/index.js +15 -1
- package/src/schema/mutation.js +20 -15
- package/src/schema/query.js +14 -12
- package/src/schema/types/assortment.js +1 -0
- package/src/schema/types/dispatch.js +0 -1
- package/src/schema/types/product/plan-product.js +0 -1
- package/src/schema/types/product/simple-product.js +0 -1
- package/src/schema/types/product/tokenized-product.js +0 -1
- package/src/schema/types/stock.js +0 -1
- package/src/schema/types/user.js +3 -0
- package/tests/api-index.test.ts +78 -0
|
@@ -23,18 +23,14 @@ export default async function finishWork(
|
|
|
23
23
|
|
|
24
24
|
if (!workId) throw new InvalidIdError({ workId });
|
|
25
25
|
|
|
26
|
-
const work = await modules.worker.finishWork(
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
finished,
|
|
35
|
-
},
|
|
36
|
-
userId,
|
|
37
|
-
);
|
|
26
|
+
const work = await modules.worker.finishWork(workId, {
|
|
27
|
+
result,
|
|
28
|
+
error,
|
|
29
|
+
success,
|
|
30
|
+
worker,
|
|
31
|
+
started,
|
|
32
|
+
finished,
|
|
33
|
+
});
|
|
38
34
|
|
|
39
35
|
if (!work) throw new WorkNotFoundOrWrongStatus({ workId });
|
|
40
36
|
|
|
@@ -13,7 +13,7 @@ export default async function removeWork(
|
|
|
13
13
|
|
|
14
14
|
if (!workId) throw new InvalidIdError({ workId });
|
|
15
15
|
|
|
16
|
-
const work = await modules.worker.deleteWork(workId
|
|
16
|
+
const work = await modules.worker.deleteWork(workId);
|
|
17
17
|
|
|
18
18
|
if (!work) throw new WorkNotFoundOrWrongStatus({ workId });
|
|
19
19
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { log } from '@unchainedshop/logger';
|
|
2
|
-
import { Context, Root } from '@unchainedshop/types/api';
|
|
2
|
+
import { Context, Root, SortOption } from '@unchainedshop/types/api';
|
|
3
3
|
import { UserQuery } from '@unchainedshop/types/user';
|
|
4
4
|
|
|
5
5
|
export default async function users(
|
|
@@ -7,6 +7,7 @@ export default async function users(
|
|
|
7
7
|
params: UserQuery & {
|
|
8
8
|
limit?: number;
|
|
9
9
|
offset?: number;
|
|
10
|
+
sort?: Array<SortOption>;
|
|
10
11
|
},
|
|
11
12
|
{ modules, userId }: Context,
|
|
12
13
|
) {
|
|
@@ -2,7 +2,7 @@ import { log } from '@unchainedshop/logger';
|
|
|
2
2
|
import { Root, Context, SortOption } from '@unchainedshop/types/api';
|
|
3
3
|
import { WorkStatus } from '@unchainedshop/types/worker';
|
|
4
4
|
|
|
5
|
-
export default async function
|
|
5
|
+
export default async function workQueue(
|
|
6
6
|
root: Root,
|
|
7
7
|
{
|
|
8
8
|
limit,
|
|
@@ -13,7 +13,6 @@ export const AssortmentFilter: AssortmentFilterHelperTypes = {
|
|
|
13
13
|
assortment: async (obj, _, { loaders }) => {
|
|
14
14
|
const assortment = await loaders.assortmentLoader.load({
|
|
15
15
|
assortmentId: obj.assortmentId,
|
|
16
|
-
includeInactive: true,
|
|
17
16
|
});
|
|
18
17
|
return assortment;
|
|
19
18
|
},
|
|
@@ -12,7 +12,6 @@ export const AssortmentLink: AssortmentLinkHelperTypes = {
|
|
|
12
12
|
child: async (obj, _, { loaders }) => {
|
|
13
13
|
const assortment = await loaders.assortmentLoader.load({
|
|
14
14
|
assortmentId: obj.childAssortmentId,
|
|
15
|
-
includeInactive: true,
|
|
16
15
|
});
|
|
17
16
|
return assortment;
|
|
18
17
|
},
|
|
@@ -20,7 +19,6 @@ export const AssortmentLink: AssortmentLinkHelperTypes = {
|
|
|
20
19
|
parent: async (obj, _, { loaders }) => {
|
|
21
20
|
const assortment = await loaders.assortmentLoader.load({
|
|
22
21
|
assortmentId: obj.parentAssortmentId,
|
|
23
|
-
includeInactive: true,
|
|
24
22
|
});
|
|
25
23
|
return assortment;
|
|
26
24
|
},
|
|
@@ -13,11 +13,13 @@ export interface AssortmentMediaHelperTypes {
|
|
|
13
13
|
}
|
|
14
14
|
|
|
15
15
|
export const AssortmentMedia: AssortmentMediaHelperTypes = {
|
|
16
|
+
// TODO: Loader for assortment media texts!
|
|
16
17
|
texts: (obj, { forceLocale }, { modules, localeContext }) =>
|
|
17
18
|
modules.assortments.media.texts.findLocalizedMediaText({
|
|
18
19
|
assortmentMediaId: obj._id,
|
|
19
20
|
locale: forceLocale || localeContext.normalized,
|
|
20
21
|
}),
|
|
21
22
|
|
|
23
|
+
// TODO: Loader for files!
|
|
22
24
|
file: (obj, _, { modules }) => modules.files.findFile({ fileId: obj.mediaId }),
|
|
23
25
|
};
|
|
@@ -14,6 +14,7 @@ export interface AssortmentPathLinkHelperTypes {
|
|
|
14
14
|
|
|
15
15
|
export const AssortmentPathLink: AssortmentPathLinkHelperTypes = {
|
|
16
16
|
link: async ({ assortmentId, childAssortmentId }, _, { modules }) => {
|
|
17
|
+
// TODO: Loader
|
|
17
18
|
return modules.assortments.links.findLink({
|
|
18
19
|
parentAssortmentId: assortmentId,
|
|
19
20
|
childAssortmentId,
|
|
@@ -16,7 +16,6 @@ export const AssortmentProduct: AssortmentProductHelperTypes = {
|
|
|
16
16
|
assortment: async (obj, _, { loaders }) => {
|
|
17
17
|
const assortment = await loaders.assortmentLoader.load({
|
|
18
18
|
assortmentId: obj.assortmentId,
|
|
19
|
-
includeInactive: true,
|
|
20
19
|
});
|
|
21
20
|
return assortment;
|
|
22
21
|
},
|
|
@@ -24,7 +23,6 @@ export const AssortmentProduct: AssortmentProductHelperTypes = {
|
|
|
24
23
|
product: async (obj, _, { loaders }) => {
|
|
25
24
|
const product = await loaders.productLoader.load({
|
|
26
25
|
productId: obj.productId,
|
|
27
|
-
includeDrafts: true,
|
|
28
26
|
});
|
|
29
27
|
return product;
|
|
30
28
|
},
|
|
@@ -62,10 +62,11 @@ export const Assortment: AssortmentHelperTypes = {
|
|
|
62
62
|
},
|
|
63
63
|
|
|
64
64
|
childrenCount: async (assortment, { includeInactive = false }, { modules }) => {
|
|
65
|
-
|
|
65
|
+
// TODO: Loader
|
|
66
|
+
const assortmentChildLinks = await modules.assortments.links.findLinks({
|
|
66
67
|
parentAssortmentId: assortment._id,
|
|
67
68
|
});
|
|
68
|
-
const assortmentIds =
|
|
69
|
+
const assortmentIds = assortmentChildLinks.map(({ childAssortmentId }) => childAssortmentId);
|
|
69
70
|
|
|
70
71
|
const selector: Query = {
|
|
71
72
|
assortmentIds,
|
|
@@ -77,6 +78,7 @@ export const Assortment: AssortmentHelperTypes = {
|
|
|
77
78
|
},
|
|
78
79
|
|
|
79
80
|
filterAssignments: async (obj, _, { modules }) => {
|
|
81
|
+
// TODO: Loader & move default sort to module
|
|
80
82
|
return modules.assortments.filters.findFilters(
|
|
81
83
|
{
|
|
82
84
|
assortmentId: obj._id,
|
|
@@ -87,7 +89,8 @@ export const Assortment: AssortmentHelperTypes = {
|
|
|
87
89
|
);
|
|
88
90
|
},
|
|
89
91
|
|
|
90
|
-
|
|
92
|
+
async linkedAssortments(obj, _, { modules }) {
|
|
93
|
+
// TODO: Loader
|
|
91
94
|
return modules.assortments.links.findLinks({
|
|
92
95
|
assortmentId: obj._id,
|
|
93
96
|
});
|
|
@@ -100,7 +103,8 @@ export const Assortment: AssortmentHelperTypes = {
|
|
|
100
103
|
});
|
|
101
104
|
},
|
|
102
105
|
|
|
103
|
-
|
|
106
|
+
async productAssignments(obj, _, { modules }) {
|
|
107
|
+
// TODO: Loader & move default sort to core module
|
|
104
108
|
return modules.assortments.products.findProducts(
|
|
105
109
|
{
|
|
106
110
|
assortmentId: obj._id,
|
|
@@ -124,6 +128,7 @@ export const Assortment: AssortmentHelperTypes = {
|
|
|
124
128
|
assortmentId: obj._id,
|
|
125
129
|
ignoreChildAssortments: query.ignoreChildAssortments,
|
|
126
130
|
});
|
|
131
|
+
|
|
127
132
|
const filterIds = await context.modules.assortments.filters.findFilterIds({
|
|
128
133
|
assortmentId: obj._id,
|
|
129
134
|
});
|
|
@@ -70,7 +70,6 @@ export const OrderItem: OrderItemHelperTypes = {
|
|
|
70
70
|
});
|
|
71
71
|
const product = await loaders.productLoader.load({
|
|
72
72
|
productId: obj.productId,
|
|
73
|
-
includeDrafts: true,
|
|
74
73
|
});
|
|
75
74
|
|
|
76
75
|
return Promise.all(
|
|
@@ -103,7 +102,6 @@ export const OrderItem: OrderItemHelperTypes = {
|
|
|
103
102
|
originalProduct: async (obj, _, { loaders }) => {
|
|
104
103
|
const product = await loaders.productLoader.load({
|
|
105
104
|
productId: obj.originalProductId,
|
|
106
|
-
includeDrafts: true,
|
|
107
105
|
});
|
|
108
106
|
return product;
|
|
109
107
|
},
|
|
@@ -111,7 +109,6 @@ export const OrderItem: OrderItemHelperTypes = {
|
|
|
111
109
|
product: async (obj, _, { loaders }) => {
|
|
112
110
|
const product = await loaders.productLoader.load({
|
|
113
111
|
productId: obj.productId,
|
|
114
|
-
includeDrafts: true,
|
|
115
112
|
});
|
|
116
113
|
return product;
|
|
117
114
|
},
|
|
@@ -2,6 +2,7 @@ import { ProductAssortmentPathHelperTypes } from '@unchainedshop/types/products'
|
|
|
2
2
|
|
|
3
3
|
export const ProductAssortmentPath: ProductAssortmentPathHelperTypes = {
|
|
4
4
|
assortmentProduct: async ({ _id }, _, { modules }) => {
|
|
5
|
+
// TODO: Loader
|
|
5
6
|
return modules.assortments.products.findProduct({
|
|
6
7
|
assortmentProductId: _id,
|
|
7
8
|
});
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ProductMediaHelperTypes } from '@unchainedshop/types/products.media';
|
|
2
2
|
|
|
3
3
|
export const ProductMedia: ProductMediaHelperTypes = {
|
|
4
|
+
// TODO: Loader for product media texts!
|
|
4
5
|
texts: async (obj, { forceLocale }, { modules, localeContext }) => {
|
|
5
6
|
return modules.products.media.texts.findLocalizedMediaText({
|
|
6
7
|
productMediaId: obj._id,
|
|
@@ -9,6 +10,7 @@ export const ProductMedia: ProductMediaHelperTypes = {
|
|
|
9
10
|
},
|
|
10
11
|
|
|
11
12
|
file: async (obj, _, { modules }) => {
|
|
13
|
+
// TODO: Loader
|
|
12
14
|
return modules.files.findFile({ fileId: obj.mediaId });
|
|
13
15
|
},
|
|
14
16
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { PlanProductHelperTypes
|
|
1
|
+
import { PlanProductHelperTypes } from '@unchainedshop/types/products';
|
|
2
2
|
import { Product } from './product-types';
|
|
3
3
|
|
|
4
4
|
export const PlanProduct: PlanProductHelperTypes = {
|
|
@@ -37,7 +37,7 @@ export const PlanProduct: PlanProductHelperTypes = {
|
|
|
37
37
|
));
|
|
38
38
|
return modules.products.prices.userPrice(
|
|
39
39
|
obj,
|
|
40
|
-
{ quantity, currency, country: countryContext, useNetPrice },
|
|
40
|
+
{ quantity, userId: requestContext.userId, currency, country: countryContext, useNetPrice },
|
|
41
41
|
requestContext,
|
|
42
42
|
);
|
|
43
43
|
},
|
|
@@ -55,22 +55,6 @@ export const PlanProduct: PlanProductHelperTypes = {
|
|
|
55
55
|
return modules.products.prices.catalogPricesLeveled(obj, { currency, country: countryContext });
|
|
56
56
|
},
|
|
57
57
|
|
|
58
|
-
simulatedDiscounts: async () => {
|
|
59
|
-
// const { modules, countryContext } = requestContext;
|
|
60
|
-
// return modules.products.prices.userDiscounts(
|
|
61
|
-
// {
|
|
62
|
-
// quantity,
|
|
63
|
-
// country: countryContext,
|
|
64
|
-
// },
|
|
65
|
-
// requestContext
|
|
66
|
-
// );
|
|
67
|
-
return [] as Array<{
|
|
68
|
-
_id: string;
|
|
69
|
-
interface: any;
|
|
70
|
-
total: ProductPrice;
|
|
71
|
-
}>;
|
|
72
|
-
},
|
|
73
|
-
|
|
74
58
|
salesUnit(obj) {
|
|
75
59
|
return obj.commerce && obj.commerce.salesUnit;
|
|
76
60
|
},
|
|
@@ -14,7 +14,6 @@ export const ProductVariationAssignment: ProductVariationAssignmentHelperTypes =
|
|
|
14
14
|
product: async ({ assignment }, _, { loaders }) => {
|
|
15
15
|
const product = await loaders.productLoader.load({
|
|
16
16
|
productId: assignment.productId,
|
|
17
|
-
includeDrafts: true,
|
|
18
17
|
});
|
|
19
18
|
return product;
|
|
20
19
|
},
|
|
@@ -17,6 +17,7 @@ import {
|
|
|
17
17
|
} from '@unchainedshop/types/user';
|
|
18
18
|
import type { Locale } from 'locale';
|
|
19
19
|
import { TokenSurrogate } from '@unchainedshop/types/warehousing';
|
|
20
|
+
import { Roles, permissions } from '@unchainedshop/roles';
|
|
20
21
|
import { checkAction, checkTypeResolver } from '../../acl';
|
|
21
22
|
import { actions } from '../../roles';
|
|
22
23
|
|
|
@@ -24,6 +25,9 @@ type HelperType<P, T> = (user: UserType, params: P, context: Context) => Promise
|
|
|
24
25
|
|
|
25
26
|
export interface UserHelperTypes {
|
|
26
27
|
_id: HelperType<any, boolean>;
|
|
28
|
+
created: HelperType<any, Date>;
|
|
29
|
+
updated: HelperType<any, Date>;
|
|
30
|
+
deleted: HelperType<any, Date>;
|
|
27
31
|
avatar: HelperType<{ localeContext: Locale }, File>;
|
|
28
32
|
bookmarks: HelperType<any, Array<Bookmark>>;
|
|
29
33
|
cart: HelperType<{ orderNumber?: string }, Order>;
|
|
@@ -70,6 +74,9 @@ const getPrimaryEmail = (user: UserType) => {
|
|
|
70
74
|
|
|
71
75
|
export const User: UserHelperTypes = {
|
|
72
76
|
_id: checkTypeResolver(viewUserPublicInfos, '_id'),
|
|
77
|
+
created: checkTypeResolver(viewUserPrivateInfos, 'created'),
|
|
78
|
+
updated: checkTypeResolver(viewUserPrivateInfos, 'updated'),
|
|
79
|
+
deleted: checkTypeResolver(viewUserPrivateInfos, 'deleted'),
|
|
73
80
|
emails: checkTypeResolver(viewUserPrivateInfos, 'emails'),
|
|
74
81
|
lastBillingAddress: checkTypeResolver(viewUserPrivateInfos, 'lastBillingAddress'),
|
|
75
82
|
lastContact: checkTypeResolver(viewUserPrivateInfos, 'lastContact'),
|
|
@@ -134,7 +141,7 @@ export const User: UserHelperTypes = {
|
|
|
134
141
|
|
|
135
142
|
country: async (user, params, context) => {
|
|
136
143
|
await checkAction(context, viewUserPrivateInfos, [user, params]);
|
|
137
|
-
return context.services.users.getUserCountry(user,
|
|
144
|
+
return context.services.users.getUserCountry(user, context);
|
|
138
145
|
},
|
|
139
146
|
|
|
140
147
|
enrollments: async (user, params, context) => {
|
|
@@ -146,18 +153,15 @@ export const User: UserHelperTypes = {
|
|
|
146
153
|
|
|
147
154
|
language: async (user, params, context) => {
|
|
148
155
|
await checkAction(context, viewUserPrivateInfos, [user, params]);
|
|
149
|
-
return context.services.users.getUserLanguage(user,
|
|
156
|
+
return context.services.users.getUserLanguage(user, context);
|
|
150
157
|
},
|
|
151
158
|
|
|
152
159
|
allowedActions: async (user, params, context) => {
|
|
153
160
|
await checkAction(context, viewUserPrivateInfos, [user, params]);
|
|
154
|
-
return context.services.users.getUserRoleActions(user, context);
|
|
155
|
-
},
|
|
156
161
|
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
// },
|
|
162
|
+
const userRoles = Roles.getUserRoles(user?._id, user.roles, true);
|
|
163
|
+
return permissions(userRoles, context.roles) as Promise<string[]>;
|
|
164
|
+
},
|
|
161
165
|
|
|
162
166
|
orders: async (user, params, context) => {
|
|
163
167
|
await checkAction(context, viewUserOrders, [user, params]);
|
|
@@ -183,12 +187,12 @@ export const User: UserHelperTypes = {
|
|
|
183
187
|
|
|
184
188
|
webAuthnCredentials: async (user, params, context) => {
|
|
185
189
|
await checkAction(context, viewUserPrivateInfos, [user, params]);
|
|
186
|
-
return user.services
|
|
190
|
+
return user.services?.webAuthn || [];
|
|
187
191
|
},
|
|
188
192
|
|
|
189
193
|
web3Addresses: async (user, params, context) => {
|
|
190
194
|
await checkAction(context, viewUserPrivateInfos, [user, params]);
|
|
191
|
-
return user.services
|
|
195
|
+
return user.services?.web3 || [];
|
|
192
196
|
},
|
|
193
197
|
|
|
194
198
|
quotations: async (user, params, context) => {
|
package/src/roles/admin.ts
CHANGED
|
@@ -1,74 +1,5 @@
|
|
|
1
1
|
export const admin = (role, actions) => {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
role.allow(actions.viewUsers, () => true);
|
|
6
|
-
role.allow(actions.viewPaymentProviders, () => true);
|
|
7
|
-
role.allow(actions.viewPaymentProvider, () => true);
|
|
8
|
-
role.allow(actions.viewPaymentInterfaces, () => true);
|
|
9
|
-
role.allow(actions.viewDeliveryProviders, () => true);
|
|
10
|
-
role.allow(actions.viewDeliveryProvider, () => true);
|
|
11
|
-
role.allow(actions.viewDeliveryInterfaces, () => true);
|
|
12
|
-
role.allow(actions.viewWarehousingProviders, () => true);
|
|
13
|
-
role.allow(actions.viewWarehousingProvider, () => true);
|
|
14
|
-
role.allow(actions.viewWarehousingInterfaces, () => true);
|
|
15
|
-
role.allow(actions.viewTranslations, () => true);
|
|
16
|
-
role.allow(actions.viewOrders, () => true);
|
|
17
|
-
role.allow(actions.viewOrder, () => true);
|
|
18
|
-
role.allow(actions.viewProducts, () => true);
|
|
19
|
-
role.allow(actions.manageLanguages, () => true);
|
|
20
|
-
role.allow(actions.manageCountries, () => true);
|
|
21
|
-
role.allow(actions.manageProducts, () => true);
|
|
22
|
-
role.allow(actions.manageCurrencies, () => true);
|
|
23
|
-
role.allow(actions.managePaymentProviders, () => true);
|
|
24
|
-
role.allow(actions.manageDeliveryProviders, () => true);
|
|
25
|
-
role.allow(actions.manageWarehousingProviders, () => true);
|
|
26
|
-
role.allow(actions.updateToken, () => true);
|
|
27
|
-
role.allow(actions.viewToken, () => true);
|
|
28
|
-
role.allow(actions.manageUsers, () => true);
|
|
29
|
-
role.allow(actions.updateUser, () => true);
|
|
30
|
-
role.allow(actions.updateUsername, () => true);
|
|
31
|
-
role.allow(actions.manageAssortments, () => true);
|
|
32
|
-
role.allow(actions.manageFilters, () => true);
|
|
33
|
-
role.allow(actions.updateCart, () => true);
|
|
34
|
-
role.allow(actions.createCart, () => true);
|
|
35
|
-
role.allow(actions.sendEmail, () => true);
|
|
36
|
-
role.allow(actions.updateOrder, () => true);
|
|
37
|
-
role.allow(actions.updateOrderDiscount, () => true);
|
|
38
|
-
role.allow(actions.updateOrderItem, () => true);
|
|
39
|
-
role.allow(actions.updateOrderDelivery, () => true);
|
|
40
|
-
role.allow(actions.updateOrderPayment, () => true);
|
|
41
|
-
role.allow(actions.markOrderConfirmed, () => true);
|
|
42
|
-
role.allow(actions.markOrderRejected, () => true);
|
|
43
|
-
role.allow(actions.markOrderPaid, () => true);
|
|
44
|
-
role.allow(actions.markOrderDelivered, () => true);
|
|
45
|
-
role.allow(actions.viewLogs, () => true);
|
|
46
|
-
role.allow(actions.viewUserRoles, () => true);
|
|
47
|
-
role.allow(actions.viewUserOrders, () => true);
|
|
48
|
-
role.allow(actions.viewUserQuotations, () => true);
|
|
49
|
-
role.allow(actions.viewUserPublicInfos, () => true);
|
|
50
|
-
role.allow(actions.viewUserPrivateInfos, () => true);
|
|
51
|
-
role.allow(actions.viewUserEnrollments, () => true);
|
|
52
|
-
role.allow(actions.viewUserTokens, () => true);
|
|
53
|
-
role.allow(actions.reviewProduct, () => true);
|
|
54
|
-
role.allow(actions.updateProductReview, () => true);
|
|
55
|
-
role.allow(actions.manageProductReviews, () => true);
|
|
56
|
-
role.allow(actions.requestQuotation, () => true);
|
|
57
|
-
role.allow(actions.viewQuotations, () => true);
|
|
58
|
-
role.allow(actions.viewQuotation, () => true);
|
|
59
|
-
role.allow(actions.manageQuotations, () => true);
|
|
60
|
-
role.allow(actions.answerQuotation, () => true);
|
|
61
|
-
role.allow(actions.bookmarkProduct, () => true);
|
|
62
|
-
role.allow(actions.manageBookmarks, () => true);
|
|
63
|
-
role.allow(actions.voteProductReview, () => true);
|
|
64
|
-
role.allow(actions.manageWorker, () => true);
|
|
65
|
-
role.allow(actions.viewEnrollments, () => true);
|
|
66
|
-
role.allow(actions.viewEnrollment, () => true);
|
|
67
|
-
role.allow(actions.updateEnrollment, () => true);
|
|
68
|
-
role.allow(actions.registerPaymentCredentials, () => true);
|
|
69
|
-
role.allow(actions.managePaymentCredentials, () => true);
|
|
70
|
-
role.allow(actions.bulkImport, () => true);
|
|
71
|
-
role.allow(actions.authTwoFactor, () => true);
|
|
72
|
-
role.allow(actions.manageTwoFactor, () => true);
|
|
73
|
-
role.allow(actions.impersonate, () => true);
|
|
2
|
+
Object.values(actions).forEach((action) => {
|
|
3
|
+
role.allow(action, () => true);
|
|
4
|
+
});
|
|
74
5
|
};
|
package/src/schema/index.js
CHANGED
|
@@ -5,4 +5,18 @@ import inputTypes from './inputTypes';
|
|
|
5
5
|
import query from './query';
|
|
6
6
|
import mutation from './mutation';
|
|
7
7
|
|
|
8
|
-
export
|
|
8
|
+
export const buildDefaultTypeDefs = ({ actions = [], events = [], workTypes = [] }) => {
|
|
9
|
+
const dynamicTypeDefs = `
|
|
10
|
+
extend enum RoleAction {
|
|
11
|
+
${actions.join(',')}
|
|
12
|
+
}
|
|
13
|
+
extend enum EventType {
|
|
14
|
+
${events.join(',')}
|
|
15
|
+
}
|
|
16
|
+
extend enum WorkType {
|
|
17
|
+
${workTypes.join(',')}
|
|
18
|
+
}
|
|
19
|
+
`;
|
|
20
|
+
|
|
21
|
+
return [...scalars, ...directives, ...types, ...inputTypes, ...query, ...mutation, dynamicTypeDefs];
|
|
22
|
+
};
|
package/src/schema/mutation.js
CHANGED
|
@@ -20,9 +20,9 @@ export default [
|
|
|
20
20
|
"""
|
|
21
21
|
Web3
|
|
22
22
|
"""
|
|
23
|
-
addWeb3Address(address: String!): User
|
|
24
|
-
verifyWeb3Address(address: String!, hash: String!): User
|
|
25
|
-
removeWeb3Address(address: String!): User
|
|
23
|
+
addWeb3Address(address: String!): User!
|
|
24
|
+
verifyWeb3Address(address: String!, hash: String!): User!
|
|
25
|
+
removeWeb3Address(address: String!): User!
|
|
26
26
|
|
|
27
27
|
"""
|
|
28
28
|
Create a new user.
|
|
@@ -40,7 +40,7 @@ export default [
|
|
|
40
40
|
login and logged in user IP address, locale and country where they
|
|
41
41
|
accessed the system)
|
|
42
42
|
"""
|
|
43
|
-
heartbeat: User
|
|
43
|
+
heartbeat: User!
|
|
44
44
|
|
|
45
45
|
"""
|
|
46
46
|
Change the current user's password. Must be logged in.
|
|
@@ -90,12 +90,12 @@ export default [
|
|
|
90
90
|
"""
|
|
91
91
|
In order to activate 2nd factor (TOTP), generate a secret and return
|
|
92
92
|
"""
|
|
93
|
-
enableTOTP(secretBase32: String!, code: String!): User
|
|
93
|
+
enableTOTP(secretBase32: String!, code: String!): User!
|
|
94
94
|
|
|
95
95
|
"""
|
|
96
96
|
Disable the 2nd factor (TOTP)
|
|
97
97
|
"""
|
|
98
|
-
disableTOTP(code: String!, userId: ID): User
|
|
98
|
+
disableTOTP(code: String!, userId: ID): User!
|
|
99
99
|
|
|
100
100
|
"""
|
|
101
101
|
Create WebAuthn PublicKeyCredentialCreationOptions to use for Registering a new WebAuthn Device
|
|
@@ -309,32 +309,37 @@ export default [
|
|
|
309
309
|
"""
|
|
310
310
|
Update E-Mail address of any user or logged in user if userId is not provided
|
|
311
311
|
"""
|
|
312
|
-
addEmail(email: String!, userId: ID): User
|
|
312
|
+
addEmail(email: String!, userId: ID): User!
|
|
313
313
|
|
|
314
314
|
"""
|
|
315
315
|
Update E-Mail address of any user or logged in user if userId is not provided
|
|
316
316
|
"""
|
|
317
|
-
removeEmail(email: String!, userId: ID): User
|
|
317
|
+
removeEmail(email: String!, userId: ID): User!
|
|
318
318
|
|
|
319
319
|
"""
|
|
320
320
|
Update Avatar of any user or logged in user if userId is not provided
|
|
321
321
|
"""
|
|
322
|
-
updateUserAvatar(avatar: Upload!, userId: ID): User
|
|
322
|
+
updateUserAvatar(avatar: Upload!, userId: ID): User!
|
|
323
323
|
|
|
324
324
|
"""
|
|
325
325
|
Set tags of user
|
|
326
326
|
"""
|
|
327
|
-
setUserTags(tags: [LowerCaseString]!, userId: ID!): User
|
|
327
|
+
setUserTags(tags: [LowerCaseString]!, userId: ID!): User!
|
|
328
328
|
|
|
329
329
|
"""
|
|
330
330
|
Update Profile of any user or logged in user if userId is not provided
|
|
331
331
|
"""
|
|
332
|
-
updateUserProfile(profile: UserProfileInput, meta: JSON, userId: ID): User
|
|
332
|
+
updateUserProfile(profile: UserProfileInput, meta: JSON, userId: ID): User!
|
|
333
|
+
|
|
334
|
+
"""
|
|
335
|
+
Remove any user or logged in user if userId is not provided
|
|
336
|
+
"""
|
|
337
|
+
removeUser(userId: ID): User!
|
|
333
338
|
|
|
334
339
|
"""
|
|
335
340
|
Enroll a new user, setting enroll to true will let the user choose his password (e-mail gets sent)
|
|
336
341
|
"""
|
|
337
|
-
enrollUser(profile: UserProfileInput!, email: String!, plainPassword: String): User
|
|
342
|
+
enrollUser(profile: UserProfileInput!, email: String!, plainPassword: String): User!
|
|
338
343
|
|
|
339
344
|
"""
|
|
340
345
|
Forcefully trigger an enrollment email for already added users by e-mail
|
|
@@ -344,17 +349,17 @@ export default [
|
|
|
344
349
|
"""
|
|
345
350
|
Set username for a specific user
|
|
346
351
|
"""
|
|
347
|
-
setUsername(username: String!, userId: ID!): User
|
|
352
|
+
setUsername(username: String!, userId: ID!): User!
|
|
348
353
|
|
|
349
354
|
"""
|
|
350
355
|
Set a new password for a specific user
|
|
351
356
|
"""
|
|
352
|
-
setPassword(newPlainPassword: String, userId: ID!): User
|
|
357
|
+
setPassword(newPlainPassword: String, userId: ID!): User!
|
|
353
358
|
|
|
354
359
|
"""
|
|
355
360
|
Set roles of a user
|
|
356
361
|
"""
|
|
357
|
-
setRoles(roles: [String!]!, userId: ID!): User
|
|
362
|
+
setRoles(roles: [String!]!, userId: ID!): User!
|
|
358
363
|
|
|
359
364
|
"""
|
|
360
365
|
Create a new product
|