fix: make packages/medusa/src/services/shipping-profile.js pass eslint (#582)

This commit is contained in:
Marlon Emmerich
2021-10-29 11:09:59 +02:00
committed by GitHub
parent 6c50d4ddfd
commit 2c415ea520
2 changed files with 28 additions and 22 deletions
-1
View File
@@ -5,7 +5,6 @@
/packages/medusa/src/services/middleware.js /packages/medusa/src/services/middleware.js
/packages/medusa/src/services/payment-provider.js /packages/medusa/src/services/payment-provider.js
/packages/medusa/src/services/product-variant.js /packages/medusa/src/services/product-variant.js
/packages/medusa/src/services/shipping-profile.js
/packages/medusa/src/subscribers/notification.js /packages/medusa/src/subscribers/notification.js
/packages/medusa/src/subscribers/order.js /packages/medusa/src/subscribers/order.js
/packages/medusa/src/subscribers/product.js /packages/medusa/src/subscribers/product.js
@@ -1,11 +1,12 @@
import _ from "lodash" import _ from "lodash"
import { MedusaError } from "medusa-core-utils" import { MedusaError } from "medusa-core-utils"
import { BaseService } from "medusa-interfaces" import { BaseService } from "medusa-interfaces"
import { Any, In } from "typeorm" import { Any } from "typeorm"
/** /**
* Provides layer to manipulate profiles. * Provides layer to manipulate profiles.
* @implements BaseService * @class
* @implements {BaseService}
*/ */
class ShippingProfileService extends BaseService { class ShippingProfileService extends BaseService {
constructor({ constructor({
@@ -57,6 +58,7 @@ class ShippingProfileService extends BaseService {
/** /**
* @param {Object} selector - the query object for find * @param {Object} selector - the query object for find
* @param {Object} config - the config object for find
* @return {Promise} the result of the find operation * @return {Promise} the result of the find operation
*/ */
async list(selector = {}, config = { relations: [], skip: 0, take: 10 }) { async list(selector = {}, config = { relations: [], skip: 0, take: 10 }) {
@@ -82,7 +84,7 @@ class ShippingProfileService extends BaseService {
} }
) )
const profiles = products.map(p => p.profile) const profiles = products.map((p) => p.profile)
const optionIds = profiles.reduce( const optionIds = profiles.reduce(
(acc, next) => acc.concat(next.shipping_options), (acc, next) => acc.concat(next.shipping_options),
@@ -90,7 +92,7 @@ class ShippingProfileService extends BaseService {
) )
const options = await Promise.all( const options = await Promise.all(
optionIds.map(async option => { optionIds.map(async (option) => {
let canSend = true let canSend = true
if (filter.region_id) { if (filter.region_id) {
if (filter.region_id !== option.region_id) { if (filter.region_id !== option.region_id) {
@@ -106,13 +108,14 @@ class ShippingProfileService extends BaseService {
}) })
) )
return options.filter(o => !!o) return options.filter((o) => !!o)
} }
/** /**
* Gets a profile by id. * Gets a profile by id.
* Throws in case of DB Error and if profile was not found. * Throws in case of DB Error and if profile was not found.
* @param {string} profileId - the id of the profile to get. * @param {string} profileId - the id of the profile to get.
* @param {Object} options - options opf the query.
* @return {Promise<Product>} the profile document. * @return {Promise<Product>} the profile document.
*/ */
async retrieve(profileId, options = {}) { async retrieve(profileId, options = {}) {
@@ -162,7 +165,7 @@ class ShippingProfileService extends BaseService {
* @return {Promise<ShippingProfile>} the shipping profile * @return {Promise<ShippingProfile>} the shipping profile
*/ */
async createDefault() { async createDefault() {
return this.atomicPhase_(async manager => { return this.atomicPhase_(async (manager) => {
let profile = await this.retrieveDefault() let profile = await this.retrieveDefault()
if (!profile) { if (!profile) {
@@ -184,7 +187,7 @@ class ShippingProfileService extends BaseService {
/** /**
* Retrieves the default gift card profile * Retrieves the default gift card profile
* @return the shipping profile for gift cards * @return {Object} the shipping profile for gift cards
*/ */
async retrieveGiftCardDefault() { async retrieveGiftCardDefault() {
const profileRepository = this.manager_.getCustomRepository( const profileRepository = this.manager_.getCustomRepository(
@@ -204,7 +207,7 @@ class ShippingProfileService extends BaseService {
* @return {Promise<ShippingProfile>} the shipping profile * @return {Promise<ShippingProfile>} the shipping profile
*/ */
async createGiftCardDefault() { async createGiftCardDefault() {
return this.atomicPhase_(async manager => { return this.atomicPhase_(async (manager) => {
let profile = await this.retrieveGiftCardDefault() let profile = await this.retrieveGiftCardDefault()
if (!profile) { if (!profile) {
@@ -230,7 +233,7 @@ class ShippingProfileService extends BaseService {
* @return {Promise} the result of the create operation * @return {Promise} the result of the create operation
*/ */
async create(profile) { async create(profile) {
return this.atomicPhase_(async manager => { return this.atomicPhase_(async (manager) => {
const profileRepository = manager.getCustomRepository( const profileRepository = manager.getCustomRepository(
this.shippingProfileRepository_ this.shippingProfileRepository_
) )
@@ -258,7 +261,7 @@ class ShippingProfileService extends BaseService {
* @return {Promise} resolves to the update result. * @return {Promise} resolves to the update result.
*/ */
async update(profileId, update) { async update(profileId, update) {
return this.atomicPhase_(async manager => { return this.atomicPhase_(async (manager) => {
const profileRepository = manager.getCustomRepository( const profileRepository = manager.getCustomRepository(
this.shippingProfileRepository_ this.shippingProfileRepository_
) )
@@ -312,7 +315,7 @@ class ShippingProfileService extends BaseService {
* @return {Promise} the result of the delete operation. * @return {Promise} the result of the delete operation.
*/ */
async delete(profileId) { async delete(profileId) {
return this.atomicPhase_(async manager => { return this.atomicPhase_(async (manager) => {
const profileRepo = manager.getCustomRepository( const profileRepo = manager.getCustomRepository(
this.shippingProfileRepository_ this.shippingProfileRepository_
) )
@@ -320,7 +323,9 @@ class ShippingProfileService extends BaseService {
// Should not fail, if profile does not exist, since delete is idempotent // Should not fail, if profile does not exist, since delete is idempotent
const profile = await profileRepo.findOne({ where: { id: profileId } }) const profile = await profileRepo.findOne({ where: { id: profileId } })
if (!profile) return Promise.resolve() if (!profile) {
return Promise.resolve()
}
await profileRepo.softRemove(profile) await profileRepo.softRemove(profile)
@@ -336,7 +341,7 @@ class ShippingProfileService extends BaseService {
* @return {Promise} the result of update * @return {Promise} the result of update
*/ */
async addProduct(profileId, productId) { async addProduct(profileId, productId) {
return this.atomicPhase_(async manager => { return this.atomicPhase_(async (manager) => {
await this.productService_ await this.productService_
.withTransaction(manager) .withTransaction(manager)
.update(productId, { profile_id: profileId }) .update(productId, { profile_id: profileId })
@@ -354,7 +359,7 @@ class ShippingProfileService extends BaseService {
* @return {Promise} the result of the model update operation * @return {Promise} the result of the model update operation
*/ */
async addShippingOption(profileId, optionId) { async addShippingOption(profileId, optionId) {
return this.atomicPhase_(async manager => { return this.atomicPhase_(async (manager) => {
await this.shippingOptionService_ await this.shippingOptionService_
.withTransaction(manager) .withTransaction(manager)
.update(optionId, { profile_id: profileId }) .update(optionId, { profile_id: profileId })
@@ -373,17 +378,17 @@ class ShippingProfileService extends BaseService {
*/ */
async decorate(profile, fields, expandFields = []) { async decorate(profile, fields, expandFields = []) {
const requiredFields = ["_id", "metadata"] const requiredFields = ["_id", "metadata"]
let decorated = _.pick(profile, fields.concat(requiredFields)) const decorated = _.pick(profile, fields.concat(requiredFields))
if (expandFields.includes("products") && profile.products) { if (expandFields.includes("products") && profile.products) {
decorated.products = await Promise.all( decorated.products = await Promise.all(
profile.products.map(pId => this.productService_.retrieve(pId)) profile.products.map((pId) => this.productService_.retrieve(pId))
) )
} }
if (expandFields.includes("shipping_options") && profile.shipping_options) { if (expandFields.includes("shipping_options") && profile.shipping_options) {
decorated.shipping_options = await Promise.all( decorated.shipping_options = await Promise.all(
profile.shipping_options.map(oId => profile.shipping_options.map((oId) =>
this.shippingOptionService_.retrieve(oId) this.shippingOptionService_.retrieve(oId)
) )
) )
@@ -435,7 +440,7 @@ class ShippingProfileService extends BaseService {
const hasCustomShippingOptions = customShippingOptions?.length const hasCustomShippingOptions = customShippingOptions?.length
// if there are custom shipping options associated with the cart, use those // if there are custom shipping options associated with the cart, use those
if (hasCustomShippingOptions) { if (hasCustomShippingOptions) {
selector.id = customShippingOptions.map(cso => cso.shipping_option_id) selector.id = customShippingOptions.map((cso) => cso.shipping_option_id)
} }
const rawOpts = await this.shippingOptionService_.list(selector, { const rawOpts = await this.shippingOptionService_.list(selector, {
@@ -444,9 +449,9 @@ class ShippingProfileService extends BaseService {
// if there are custom shipping options associated with the cart, return cart shipping options with custom price // if there are custom shipping options associated with the cart, return cart shipping options with custom price
if (hasCustomShippingOptions) { if (hasCustomShippingOptions) {
return rawOpts.map(so => { return rawOpts.map((so) => {
const customOption = customShippingOptions.find( const customOption = customShippingOptions.find(
cso => cso.shipping_option_id === so.id (cso) => cso.shipping_option_id === so.id
) )
return { return {
@@ -464,7 +469,9 @@ class ShippingProfileService extends BaseService {
if (option) { if (option) {
options.push(option) options.push(option)
} }
} catch (error) {} } catch (ex) {
// catch the error, but intentionally do not break the iterations
}
} }
return options return options