Skip to main content

Class: LineItemService

Hierarchy

  • TransactionBaseService

    LineItemService

Constructors

constructor

new LineItemService(__namedParameters)

Parameters

NameType
__namedParametersInjectedDependencies

Overrides

TransactionBaseService.constructor

Defined in

packages/medusa/src/services/line-item.ts:59

Properties

__configModule__

Protected Optional Readonly __configModule__: Record<string, unknown>

Inherited from

TransactionBaseService.__configModule__

Defined in

packages/medusa/src/interfaces/transaction-base-service.ts:10


__container__

Protected Readonly __container__: any

Inherited from

TransactionBaseService.__container__

Defined in

packages/medusa/src/interfaces/transaction-base-service.ts:9


__moduleDeclaration__

Protected Optional Readonly __moduleDeclaration__: Record<string, unknown>

Inherited from

TransactionBaseService.__moduleDeclaration__

Defined in

packages/medusa/src/interfaces/transaction-base-service.ts:11


cartRepository_

Protected Readonly cartRepository_: typeof CartRepository

Defined in

packages/medusa/src/services/line-item.ts:50


featureFlagRouter_

Protected Readonly featureFlagRouter_: FlagRouter

Defined in

packages/medusa/src/services/line-item.ts:55


itemTaxLineRepo_

Protected Readonly itemTaxLineRepo_: typeof LineItemTaxLineRepository

Defined in

packages/medusa/src/services/line-item.ts:49


lineItemAdjustmentService_

Protected Readonly lineItemAdjustmentService_: LineItemAdjustmentService

Defined in

packages/medusa/src/services/line-item.ts:56


lineItemRepository_

Protected Readonly lineItemRepository_: typeof LineItemRepository

Defined in

packages/medusa/src/services/line-item.ts:48


manager_

Protected manager_: EntityManager

Overrides

TransactionBaseService.manager_

Defined in

packages/medusa/src/services/line-item.ts:45


pricingService_

Protected Readonly pricingService_: PricingService

Defined in

packages/medusa/src/services/line-item.ts:53


productService_

Protected Readonly productService_: ProductService

Defined in

packages/medusa/src/services/line-item.ts:52


productVariantService_

Protected Readonly productVariantService_: ProductVariantService

Defined in

packages/medusa/src/services/line-item.ts:51


regionService_

Protected Readonly regionService_: RegionService

Defined in

packages/medusa/src/services/line-item.ts:54


taxProviderService_

Protected Readonly taxProviderService_: TaxProviderService

Defined in

packages/medusa/src/services/line-item.ts:57


transactionManager_

Protected transactionManager_: undefined | EntityManager

Overrides

TransactionBaseService.transactionManager_

Defined in

packages/medusa/src/services/line-item.ts:46

Methods

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

packages/medusa/src/interfaces/transaction-base-service.ts:50


cloneTo

cloneTo(ids, data?, options?): Promise<LineItem[]>

Parameters

NameType
idsstring | string[]
dataObject
data.adjustments?(undefined | { id?: string | undefined; item_id?: string | undefined; item?: { cart_id?: string | undefined; cart?: { readonly object?: "cart" | undefined; email?: string | undefined; billing_address_id?: string | undefined; ... 37 more ...; updated_at?: { ...; } | undefined; } | undefined; ... 38 more ...; updated_at?: { ...; }...)[]
data.allow_discounts?boolean
data.cart?{ readonly object?: "cart" | undefined; email?: string | undefined; billing_address_id?: string | undefined; billing_address?: { customer_id?: string | null | undefined; customer?: { ...; } | ... 1 more ... | undefined; ... 15 more ...; updated_at?: { ...; } | undefined; } | undefined; ... 36 more ...; updated_at?: ...
data.cart_id?string
data.claim_order?{ payment_status?: ClaimPaymentStatus | undefined; fulfillment_status?: ClaimFulfillmentStatus | undefined; claim_items?: ({ images?: ({ ...; } | undefined)[] | undefined; ... 14 more ...; updated_at?: { ...; } | undefined; } | undefined)[] | undefined; ... 17 more ...; id?: string | undefined; }
data.claim_order_id?string
data.created_at?{ toString?: {} | undefined; toDateString?: {} | undefined; toTimeString?: {} | undefined; toLocaleString?: {} | undefined; toLocaleDateString?: {} | undefined; toLocaleTimeString?: {} | undefined; ... 37 more ...; [Symbol.toPrimitive]?: {} | undefined; }
data.description?null | string
data.discount_total?null | number
data.fulfilled_quantity?null | number
data.gift_card_total?null | number
data.has_shipping?null | boolean
data.id?string
data.includes_tax?boolean
data.is_giftcard?boolean
data.is_return?boolean
data.metadata?{ [x: string]: unknown; }
data.order?{ readonly object?: "order" | undefined; status?: OrderStatus | undefined; fulfillment_status?: FulfillmentStatus | undefined; payment_status?: PaymentStatus | undefined; ... 49 more ...; updated_at?: { ...; } | undefined; }
data.order_edit?null | { order_id?: string | undefined; order?: { readonly object?: "order" | undefined; status?: OrderStatus | undefined; fulfillment_status?: FulfillmentStatus | undefined; ... 50 more ...; updated_at?: { ...; } | undefined; } | undefined; ... 27 more ...; updated_at?: { ...; } | undefined; }
data.order_edit_id?null | string
data.order_id?null | string
data.original_item_id?null | string
data.original_tax_total?null | number
data.original_total?null | number
data.quantity?number
data.refundable?null | number
data.returned_quantity?null | number
data.shipped_quantity?null | number
data.should_merge?boolean
data.subtotal?null | number
data.swap?{ fulfillment_status?: SwapFulfillmentStatus | undefined; payment_status?: SwapPaymentStatus | undefined; order_id?: string | undefined; ... 20 more ...; updated_at?: { ...; } | undefined; }
data.swap_id?string
data.tax_lines?(undefined | { item_id?: string | undefined; item?: { cart_id?: string | undefined; cart?: { readonly object?: "cart" | undefined; email?: string | undefined; billing_address_id?: string | undefined; ... 37 more ...; updated_at?: { ...; } | undefined; } | undefined; ... 38 more ...; updated_at?: { ...; } | undefined; } | undefin...)[]
data.tax_total?null | number
data.thumbnail?null | string
data.title?string
data.total?null | number
data.unit_price?number
data.updated_at?{ toString?: {} | undefined; toDateString?: {} | undefined; toTimeString?: {} | undefined; toLocaleString?: {} | undefined; toLocaleDateString?: {} | undefined; toLocaleTimeString?: {} | undefined; ... 37 more ...; [Symbol.toPrimitive]?: {} | undefined; }
data.variant?{ title?: string | undefined; product_id?: string | undefined; product?: { title?: string | undefined; subtitle?: string | null | undefined; description?: string | null | undefined; ... 30 more ...; updated_at?: { ...; } | undefined; } | undefined; ... 23 more ...; updated_at?: { ...; } | undefined; }
data.variant_id?null | string
optionsObject
options.setOriginalLineItemId?boolean

Returns

Promise<LineItem[]>

Defined in

packages/medusa/src/services/line-item.ts:496


create

create<T, TResult>(data): Promise<TResult>

Create a line item

Type parameters

NameType
TLineItem | LineItem[]
TResultT extends LineItem[] ? LineItem[] : LineItem

Parameters

NameTypeDescription
dataTthe line item object to create

Returns

Promise<TResult>

the created line item

Defined in

packages/medusa/src/services/line-item.ts:377


createReturnLines

createReturnLines(returnId, cartId): Promise<LineItem[]>

Creates return line items for a given cart based on the return items in a return.

Parameters

NameTypeDescription
returnIdstringthe id to generate return items from.
cartIdstringthe cart to assign the return line items to.

Returns

Promise<LineItem[]>

the created line items

Defined in

packages/medusa/src/services/line-item.ts:135


createTaxLine

createTaxLine(args): LineItemTaxLine

Create a line item tax line.

Parameters

NameTypeDescription
argsObjecttax line partial passed to the repo create method
args.code?null | string-
args.created_at?{ toString?: {} | undefined; toDateString?: {} | undefined; toTimeString?: {} | undefined; toLocaleString?: {} | undefined; toLocaleDateString?: {} | undefined; toLocaleTimeString?: {} | undefined; ... 37 more ...; [Symbol.toPrimitive]?: {} | undefined; }-
args.id?string-
args.item?{ cart_id?: string | undefined; cart?: { readonly object?: "cart" | undefined; email?: string | undefined; billing_address_id?: string | undefined; billing_address?: { customer_id?: string | ... 1 more ... | undefined; ... 16 more ...; updated_at?: { ...; } | undefined; } | undefined; ... 36 more ...; updated_at?: {...-
args.item_id?string-
args.metadata?{ [x: string]: unknown; }-
args.name?string-
args.rate?number-
args.updated_at?{ toString?: {} | undefined; toDateString?: {} | undefined; toTimeString?: {} | undefined; toLocaleString?: {} | undefined; toLocaleDateString?: {} | undefined; toLocaleTimeString?: {} | undefined; ... 37 more ...; [Symbol.toPrimitive]?: {} | undefined; }-

Returns

LineItemTaxLine

a new line item tax line

Defined in

packages/medusa/src/services/line-item.ts:488


delete

delete(id): Promise<undefined | LineItem>

Deletes a line item.

Parameters

NameTypeDescription
idstringthe id of the line item to delete

Returns

Promise<undefined | LineItem>

the result of the delete operation

Defined in

packages/medusa/src/services/line-item.ts:448


deleteWithTaxLines

deleteWithTaxLines(id): Promise<undefined | LineItem>

Deletes a line item with the tax lines.

Parameters

NameTypeDescription
idstringthe id of the line item to delete

Returns

Promise<undefined | LineItem>

the result of the delete operation

Defined in

packages/medusa/src/services/line-item.ts:467


generate

generate<T, TResult>(variantIdOrData, regionIdOrContext, quantity?, context?): Promise<TResult>

Generate a single or multiple line item without persisting the data into the db

Type parameters

NameType
Tstring | GenerateInputData | GenerateInputData[]
TResultT extends string ? LineItem : T extends LineItem ? LineItem : LineItem[]

Parameters

NameType
variantIdOrDataT
regionIdOrContextT extends string ? string : GenerateLineItemContext
quantity?number
contextGenerateLineItemContext

Returns

Promise<TResult>

Defined in

packages/medusa/src/services/line-item.ts:196


generateLineItem

Protected generateLineItem(variant, quantity, context): Promise<LineItem>

Parameters

NameType
variantObject
variant.idstring
variant.productObject
variant.product.discountableboolean
variant.product.is_giftcardboolean
variant.product.thumbnailnull | string
variant.product.titlestring
variant.product_idstring
variant.titlestring
quantitynumber
contextGenerateLineItemContext & { variantPricing: ProductVariantPricing }

Returns

Promise<LineItem>

Defined in

packages/medusa/src/services/line-item.ts:311


list

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

Parameters

NameType
selectorSelector<LineItem>
configFindConfig<LineItem>

Returns

Promise<LineItem[]>

Defined in

packages/medusa/src/services/line-item.ts:88


retrieve

retrieve(id, config?): Promise<LineItem>

Retrieves a line item by its id.

Parameters

NameTypeDescription
idstringthe id of the line item to retrieve
configObjectthe config to be used at query building

Returns

Promise<LineItem>

the line item

Defined in

packages/medusa/src/services/line-item.ts:108


shouldRetryTransaction_

Protected shouldRetryTransaction_(err): boolean

Parameters

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

Returns

boolean

Inherited from

TransactionBaseService.shouldRetryTransaction_

Defined in

packages/medusa/src/interfaces/transaction-base-service.ts:31


update

update(idOrSelector, data): Promise<LineItem[]>

Updates a line item

Parameters

NameTypeDescription
idOrSelectorstring | Selector<LineItem>the id or selector of the line item(s) to update
dataPartial<LineItem>the properties to update the line item(s)

Returns

Promise<LineItem[]>

the updated line item(s)

Defined in

packages/medusa/src/services/line-item.ts:405


validateGenerateArguments

Protected validateGenerateArguments<T, TResult>(variantIdOrData, regionIdOrContext, quantity?): void

Type parameters

NameType
Tstring | GenerateInputData | GenerateInputData[]
TResultT extends string ? LineItem : T extends LineItem ? LineItem : LineItem[]

Parameters

NameType
variantIdOrDatastring | T
regionIdOrContextT extends string ? string : GenerateLineItemContext
quantity?number

Returns

void

Defined in

packages/medusa/src/services/line-item.ts:567


withTransaction

withTransaction(transactionManager?): LineItemService

Parameters

NameType
transactionManager?EntityManager

Returns

LineItemService

Inherited from

TransactionBaseService.withTransaction

Defined in

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