Skip to main content

Class: ShippingProfileService

Provides layer to manipulate profiles.

Implements

Hierarchy​

  • TransactionBaseService

    ↳ ShippingProfileService

Constructors​

constructor​

• new ShippingProfileService(__namedParameters)

Parameters​

NameType
__namedParametersInjectedDependencies

Overrides​

TransactionBaseService.constructor

Defined in​

medusa/src/services/shipping-profile.ts:45

Properties​

__configModule__​

• Protected Optional Readonly __configModule__: Record<string, unknown>

Inherited from​

TransactionBaseService.__configModule__

Defined in​

medusa/src/interfaces/transaction-base-service.ts:14


__container__​

• Protected Readonly __container__: any

Inherited from​

TransactionBaseService.__container__

Defined in​

medusa/src/interfaces/transaction-base-service.ts:13


__moduleDeclaration__​

• Protected Optional Readonly __moduleDeclaration__: Record<string, unknown>

Inherited from​

TransactionBaseService.__moduleDeclaration__

Defined in​

medusa/src/interfaces/transaction-base-service.ts:15


customShippingOptionService_​

• Protected Readonly customShippingOptionService_: CustomShippingOptionService

Defined in​

medusa/src/services/shipping-profile.ts:40


manager_​

• Protected manager_: EntityManager

Inherited from​

TransactionBaseService.manager_

Defined in​

medusa/src/interfaces/transaction-base-service.ts:5


productRepository_​

• Protected Readonly productRepository_: Repository<Product> & { _applyCategoriesQuery: (qb: SelectQueryBuilder<Product>, __namedParameters: Object) => SelectQueryBuilder<Product> ; _findWithRelations: (__namedParameters: { idsOrOptionsWithoutRelations: string[] | FindWithoutRelationsOptions ; relations: string[] ; shouldCount: boolean ; withDeleted: boolean }) => Promise<[Product[], number]> ; bulkAddToCollection: (productIds: string[], collectionId: string) => Promise<Product[]> ; bulkRemoveFromCollection: (productIds: string[], collectionId: string) => Promise<Product[]> ; findOneWithRelations: (relations: string[], optionsWithoutRelations: FindWithoutRelationsOptions) => Promise<Product> ; findWithRelations: (relations: string[], idsOrOptionsWithoutRelations: string[] | FindWithoutRelationsOptions, withDeleted: boolean) => Promise<Product[]> ; findWithRelationsAndCount: (relations: string[], idsOrOptionsWithoutRelations: FindWithoutRelationsOptions) => Promise<[Product[], number]> ; getFreeTextSearchResultsAndCount: (q: string, options: FindWithoutRelationsOptions, relations: string[]) => Promise<[Product[], number]> ; isProductInSalesChannels: (id: string, salesChannelIds: string[]) => Promise<boolean> ; queryProducts: (optionsWithoutRelations: FindWithoutRelationsOptions, shouldCount: boolean) => Promise<[Product[], number]> ; queryProductsWithIds: (__namedParameters: { entityIds: string[] ; groupedRelations: { [toplevel: string]: string[]; } ; order?: { [column: string]: "ASC" | "DESC"; } ; select?: keyof Product[] ; where?: FindOptionsWhere<Product> ; withDeleted?: boolean }) => Promise<Product[]> }

Defined in​

medusa/src/services/shipping-profile.ts:43


productService_​

• Protected Readonly productService_: ProductService

Defined in​

medusa/src/services/shipping-profile.ts:38


shippingOptionService_​

• Protected Readonly shippingOptionService_: ShippingOptionService

Defined in​

medusa/src/services/shipping-profile.ts:39


shippingProfileRepository_​

• Protected Readonly shippingProfileRepository_: Repository<ShippingProfile>

Defined in​

medusa/src/services/shipping-profile.ts:42


transactionManager_​

• Protected transactionManager_: undefined | EntityManager

Inherited from​

TransactionBaseService.transactionManager_

Defined in​

medusa/src/interfaces/transaction-base-service.ts:6

Accessors​

activeManager_​

• Protected get activeManager_(): EntityManager

Returns​

EntityManager

Inherited from​

TransactionBaseService.activeManager_

Defined in​

medusa/src/interfaces/transaction-base-service.ts:8

Methods​

addProduct​

▸ addProduct(profileId, productId): Promise<ShippingProfile>

Deprecated

use addProducts instead

Parameters​

NameType
profileIdstring
productIdstring | string[]

Returns​

Promise<ShippingProfile>

Defined in​

medusa/src/services/shipping-profile.ts:345


addProducts​

▸ addProducts(profileId, productId): Promise<ShippingProfile>

Adds a product or an array of products to the profile.

Parameters​

NameTypeDescription
profileIdstringthe profile to add the products to.
productIdstring | string[]the ID of the product or multiple products to add.

Returns​

Promise<ShippingProfile>

the result of update

Defined in​

medusa/src/services/shipping-profile.ts:358


addShippingOption​

▸ addShippingOption(profileId, optionId): Promise<ShippingProfile>

Adds a shipping option to the profile. The shipping option can be used to fulfill the products in the products field.

Parameters​

NameTypeDescription
profileIdstringthe profile to apply the shipping option to
optionIdstring | string[]the ID of the option or multiple options to add to the profile

Returns​

Promise<ShippingProfile>

the result of the model update operation

Defined in​

medusa/src/services/shipping-profile.ts:401


atomicPhase_​

▸ Protected atomicPhase_<TResult, TError>(work, isolationOrErrorHandler?, maybeErrorHandlerOrDontFail?): Promise<TResult>

Wraps some work within a transactional block. If the service already has a transaction manager attached this will be reused, otherwise a new transaction manager is created.

Type parameters​

Name
TResult
TError

Parameters​

NameTypeDescription
work(transactionManager: EntityManager) => Promise<TResult>the transactional work to be done
isolationOrErrorHandler?IsolationLevel | (error: TError) => Promise<void | TResult>the isolation level to be used for the work.
maybeErrorHandlerOrDontFail?(error: TError) => Promise<void | TResult>Potential error handler

Returns​

Promise<TResult>

the result of the transactional work

Inherited from​

TransactionBaseService.atomicPhase_

Defined in​

medusa/src/interfaces/transaction-base-service.ts:56


create​

▸ create(profile): Promise<ShippingProfile>

Creates a new shipping profile.

Parameters​

NameTypeDescription
profileCreateShippingProfilethe shipping profile to create from

Returns​

Promise<ShippingProfile>

the result of the create operation

Defined in​

medusa/src/services/shipping-profile.ts:249


createDefault​

▸ createDefault(): Promise<ShippingProfile>

Creates a default shipping profile, if this does not already exist.

Returns​

Promise<ShippingProfile>

the shipping profile

Defined in​

medusa/src/services/shipping-profile.ts:179


createGiftCardDefault​

▸ createGiftCardDefault(): Promise<ShippingProfile>

Creates a default shipping profile, for gift cards if unless it already exists.

Returns​

Promise<ShippingProfile>

the shipping profile

Defined in​

medusa/src/services/shipping-profile.ts:223


delete​

▸ delete(profileId): Promise<void>

Deletes a profile with a given profile id.

Parameters​

NameTypeDescription
profileIdstringthe id of the profile to delete. Must be castable as an ObjectId

Returns​

Promise<void>

the result of the delete operation.

Defined in​

medusa/src/services/shipping-profile.ts:323


fetchCartOptions​

▸ fetchCartOptions(cart): Promise<ShippingOption[]>

Finds all the shipping profiles that cover the products in a cart, and validates all options that are available for the cart.

Parameters​

NameTypeDescription
cartanythe cart object to find shipping options for

Returns​

Promise<ShippingOption[]>

a list of the available shipping options

Defined in​

medusa/src/services/shipping-profile.ts:426


fetchOptionsByProductIds​

▸ fetchOptionsByProductIds(productIds, filter): Promise<ShippingOption[]>

Parameters​

NameType
productIdsstring[]
filterSelector<ShippingOption>

Returns​

Promise<ShippingOption[]>

Defined in​

medusa/src/services/shipping-profile.ts:82


getProfilesInCart​

▸ Protected getProfilesInCart(cart): string[]

Returns a list of all the productIds in the cart.

Parameters​

NameTypeDescription
cartCartthe cart to extract products from

Returns​

string[]

a list of product ids

Defined in​

medusa/src/services/shipping-profile.ts:492


list​

▸ list(selector?, config?): Promise<ShippingProfile[]>

Parameters​

NameTypeDescription
selectorSelector<ShippingProfile>the query object for find
configFindConfig<ShippingProfile>the config object for find

Returns​

Promise<ShippingProfile[]>

the result of the find operation

Defined in​

medusa/src/services/shipping-profile.ts:67


removeProducts​

▸ removeProducts(profileId, productId): Promise<void | ShippingProfile>

Removes a product or an array of products from the profile.

Parameters​

NameTypeDescription
profileIdnull | stringthe profile to add the products to.
productIdstring | string[]the ID of the product or multiple products to add.

Returns​

Promise<void | ShippingProfile>

the result of update

Defined in​

medusa/src/services/shipping-profile.ts:380


retrieve​

▸ retrieve(profileId, options?): Promise<ShippingProfile>

Gets a profile by id. Throws in case of DB Error and if profile was not found.

Parameters​

NameTypeDescription
profileIdstringthe id of the profile to get.
optionsFindConfig<ShippingProfile>options opf the query.

Returns​

Promise<ShippingProfile>

the profile document.

Defined in​

medusa/src/services/shipping-profile.ts:134


retrieveDefault​

▸ retrieveDefault(): Promise<null | ShippingProfile>

Returns​

Promise<null | ShippingProfile>

Defined in​

medusa/src/services/shipping-profile.ts:163


retrieveGiftCardDefault​

▸ retrieveGiftCardDefault(): Promise<null | ShippingProfile>

Retrieves the default gift card profile

Returns​

Promise<null | ShippingProfile>

the shipping profile for gift cards

Defined in​

medusa/src/services/shipping-profile.ts:206


shouldRetryTransaction_​

▸ Protected shouldRetryTransaction_(err): boolean

Parameters​

NameType
errRecord<string, unknown> | { code: string }

Returns​

boolean

Inherited from​

TransactionBaseService.shouldRetryTransaction_

Defined in​

medusa/src/interfaces/transaction-base-service.ts:37


update​

▸ update(profileId, update): Promise<ShippingProfile>

Updates a profile. Metadata updates and product updates should use dedicated methods, e.g. setMetadata, addProduct, etc. The function will throw errors if metadata or product updates are attempted.

Parameters​

NameTypeDescription
profileIdstringthe id of the profile. Must be a string that can be casted to an ObjectId
updateUpdateShippingProfilean object with the update values.

Returns​

Promise<ShippingProfile>

resolves to the update result.

Defined in​

medusa/src/services/shipping-profile.ts:284


withTransaction​

▸ withTransaction(transactionManager?): ShippingProfileService

Parameters​

NameType
transactionManager?EntityManager

Returns​

ShippingProfileService

Inherited from​

TransactionBaseService.withTransaction

Defined in​

medusa/src/interfaces/transaction-base-service.ts:20

Was this section helpful?